web-dev-qa-db-fra.com

Spécifiez la taille et la longueur maximale pour Html.TextBoxFor

Je dois changer la taille de la zone de texte:

 @Html.SimpleTextBoxFor(m => ((ModifiableProperty<string>)m).Value.TheCurrentValue, new { id = fieldId})

J'ai essayé

@Html.SimpleTextBoxFor(m => ((ModifiableProperty<string>)m).Value.TheCurrentValue, new { id = fieldId, @maxlength = "100" })

mais ne fonctionne pas.

25
Adnane ARHARBI

Vous pouvez également essayer ceci:

@Html.SimpleTextBoxFor(m => ((ModifiableProperty<string>)m).Value.TheCurrentValue, new { id = fieldId, style ="width:200px"})

Modifiez simplement la valeur 200px pour la taille souhaitée.

Pour maxlength j'utilise la même syntaxe que vous et ça marche pour moi.

 @Html.TextBoxFor(model => model.EL_Taille_Initiale, new { style = "width:50px", @maxlength = "5" })
40
ThePaye

Sortez le "@" caractère pour votre attribut maxlength. Vous n'en avez besoin que pour les mots clés réservés (c'est-à-dire class). De plus, vous n'avez pas besoin des guillemets autour du nombre pour maxlength.

@Html.SimpleTextBoxFor(m => ((ModifiableProperty<string>)m).Value.TheCurrentValue, new { id = fieldId, maxlength = 100 })

Si cela ne résout pas le problème, veuillez publier ce que le balisage HTML est généré sur la page de réponse.

10
user596075

J'utilise un constructeur pour mon TextBox qui ne permet pas de passer des attributs HTML, j'ai donc dû l'ajouter à ma $(document).ready fonction: $('#textBoxID').attr('maxlength', 30); Ne répond pas directement à la question OP, mais offre un point de départ alternatif.

1
KennyZ