MVC5 et Bootstrap3: Html.EditorPour une mauvaise classe? Comment changer?
Je viens de remarquer que MVC 5 est à l'aide d'une autre classe pour les champs de saisie lors de l'utilisation de EditorFor. Je pense que c'est à partir d'une version inférieure de bootstrap, donc le courant de la classe n'a pas vraiment d'ajouter jusqu'à.
Je parle de cela:
<div class="form-group">
@Html.LabelFor(model => model.Contact.CellphoneNo, new { @class = "control-label col-md-4"})
<div class="col-md-8">
@Html.EditorFor(model => model.Contact.CellphoneNo)
@Html.ValidationMessageFor(model => model.Contact.CellphoneNo)
</div>
</div>
Qui aboutit à ceci:
<div class="form-group">
<label class="control-label col-md-4" for="Contact_CellphoneNo">CellphoneNo</label>
<div class="col-md-8">
<input class="text-box single-line" id="Contact_CellphoneNo" name="Contact.CellphoneNo" type="text" value="">
<span class="field-validation-valid" data-valmsg-for="Contact.CellphoneNo" data-valmsg-replace="true"></span>
</div>
</div>
Quand vous regardez l'étiquette, il a un "zone de texte" classe au lieu de Bootstrap3 de "form-control"
Je pense que j'ai lu quelque part que c'était en raison du fait de MVC5 de commutation de Bootstrap 3 à la dernière minute ou quelque chose.
Question est: Comment faire pour changer cette classe manuellement? Je veux être capable de changer de zone de texte du formulaire de contrôle. Je ne peux pas vraiment trouver le code.
J'ai aussi essayé ce déjà
@Html.EditorFor(model => model.CivilStatus, new { @class = "form-control" })
@Html.ValidationMessageFor(model => model.CivilStatus)
Qui ne semble pas fonctionner. Je suis perplexe. Des idées?
Merci d'avance!
source d'informationauteur Dominic
Vous devez vous connecter pour publier un commentaire.
EditorFor n'accepte pas les attributs HTML en tant que paramètre. Le paramètre utilisé est en fait
additionalViewData
Utilisation TextBoxFor au lieu
Modifier
Comme de la MVC 5.1, attributs HTML peut être transmis à la EditorTemplate à l'aide de cette syntaxe
Si vous utilisez le MVC 5 ou version antérieure utilisation
@Html.TextBoxFor
au lieu de@Html.EditorFor
comme indiqué dans le code suivant:et si vous avez également à lier knockout.js modelview attribut alors:
J'ai utilisé cela avec MVC4, c'est de travailler pour moi: