Comment puis-je contrôler le nombre de lignes ajoutées à une zone de texte à l'aide de Illuminate\Html\FormFacade
classe?
J'ai ajouté le champ dans mon modèle.
<div class="form-group">
{!! Form::label('placeOfDeath','Place of Death') !!}
{!! Form::textarea('placeOfDeath',null,['class'=>'form-control']) !!}
</div>
Lorsqu'il est rendu, la zone de texte a cols="50"
et rows="10"
<textarea class="form-control" name="placeOfDeath" cols="50" rows="10" id="placeOfDeath"></textarea>
Je veux un moyen de contrôler ces chiffres, j'ai vérifié la documentation mais je n'ai rien trouvé?
Le tableau d'options (troisième paramètre) est en fait le tableau d'attributs de cet élément, vous pouvez donc simplement passer n'importe quel 'key' => 'value'
et l'élément en aura comme attributs, par exemple:
{!! Form::textarea('placeOfDeath',null,['class'=>'form-control', 'rows' => 2, 'cols' => 40]) !!}
J'ai accepté l'autre réponse car elle fonctionne parfaitement.
J'ai également constaté que la classe vérifie réellement un attribut size
protected function setQuickTextAreaSize($options)
{
$segments = explode('x', $options['size']);
return array_merge($options, array('cols' => $segments[0], 'rows' => $segments[1]));
}
C'est un gain de place mineur, je ne suis pas sûr qu'il rend le code plus lisible, mais c'est une alternative pour couper quelques caractères
['size' => '30x5']
Essayez également ceci:
{!! Form::textarea('placeOfDeath',null, array('class'=>'form-control',
'rows' => 10, 'cols' => 50)) !!}