comment définir la valeur par défaut HTML.EditorFor()
Comment puis-je définir une valeur par défaut dans mon editorboxes de sorte que dans le cas où je n'écris rien dans la boîte, il n'envoie pas la valeur null.
<div class="editor-label">
@Html.Label("Description")
</div> //somthing like
<div>@Html.EditorFor(model => model.Description, " Default value ")
@Html.ValidationMessageFor(model => model.Description)
</div>
Ou si je change d':
@Html.TextBoxFor(Model.somthing, "Default value")
OriginalL'auteur Fadi Alkadi | 2013-05-15
Vous devez vous connecter pour publier un commentaire.
Pour afficher une valeur par défaut dans un champ, vous devez affecter la Valeur de la propriété dans htmlAttributes, comme dans cet exemple:
Assurez-vous que le V de la Valeur est en majuscules.
De cette façon vous serez juste à l'attribution d'une valeur par défaut dans le champ html et non dans le modèle.
L'attribution des valeurs par défaut dans le modèle force de vous pour créer le modèle objet premier et qui sera mis en place des valeurs par défaut pour les non nullable champs comme datetimes, qui fera de la page pour afficher les annoyings 1/1/1001 00:00:00 les valeurs dans les champs de datetime vous pourriez avoir dans le reste du modèle.
Cela fonctionne avec les éléments Html qui ont une valeur d'attribut comme une entrée. Pour les éléments tels que textarea je recommanderais Javad_Amiry de la solution
OriginalL'auteur Gabriel Pravaz
La façon la plus simple est d'initialiser les propriétés de votre modèle constructeur:
Et lorsque vous souhaitez l'envoyer à la vue, par exemple dans
PersonController.Create
de méthode d'action:Qui est-il. N'oubliez pas, vous devez créer une nouvelle instance de votre modèle et de le passer à la vue d'utiliser les valeurs par défaut. Parce que la vue associée à cette méthode d'action, s'attend à une
PersonModel
exemple, mais lorsque vous utilisez la méthode de création comme ceci:la vue n'a rien (je veux dire
null
), donc les valeurs par défaut n'existe pas en fait.Mais si vous voulez le faire pour compliqué fins, par exemple pour utiliser la valeur par défaut, comme en filigrane, ou comme @JTMon dit, vous ne voulez pas que les utilisateurs finaux pour voir les valeurs par défaut, vous aurez d'autres solutions. S'il vous plaît laissez-moi savoir votre but.
OriginalL'auteur javad amiry
Au lieu d'utiliser
Utilisation
OriginalL'auteur Prabhat
Comment sur la définition de votre modèle, "valeur par Défaut" pour ses quelque chose de propriété? dans ce cas, vous n'avez pas besoin de faire quelque chose de spécial. Si ce n'est pas satisfaisante (par exemple si vous ne voulez pas que l'utilisateur de voir la "valeur par Défaut" sur l'écran), vous pouvez avoir un modèle de liaison personnalisé pour ce modèle, qui hérite de DefaultModelBinder, remplacer juste le OnModelUpdated méthode, en faire quelque chose le long des lignes de:
Veuillez également noter que EditorFor ignore personnalisé attributs html que vous envoyez à ce que je sache.
OriginalL'auteur JTMon