J'ai un Textbox
avec le type date
. J'essaie de définir la valeur par défaut de textbox
à la date du jour.
@Html.TextBoxFor(x => x.Date, new { @id = "Date", @type = "date",
@value = DateTime.Now.ToShortDateString() })
La ligne ci-dessus ne définit pas la valeur par défaut. Comment définir la valeur par défaut comme date du jour?
Comme Stephen Muecke l'a dit, vous devez définir la valeur de la propriété sur le modèle.
// in controller method that returns the view.
MyModel model = new MyModel();
model.Date = DateTime.Today;
return View(model);
Et votre rasoir serait:
@Html.TextBoxFor(x => x.Date, "{0:yyyy-MM-dd}", new { @class = "form-control", @type = "date"})
Notez que les propriétés id
et name
doivent être automatiquement attribuées au nom de la propriété lors de l'utilisation d'une méthode For
, telle que @Html.TextBoxFor()
, de sorte que vous n'avez pas besoin de définir explicitement l'attribut id
.
C'est un meilleur moyen de gérer en vue
@Html.TextBoxFor(x=> x.Date, new { @Value = @DateTime.Now.ToShortDateString() })
Une autre solution:
@Html.TextBoxFor(model=>model.CreatedOn, new{@value= System.DateTime.Now})
Cela fonctionne pour moi, bien sûr que cela fonctionnera pour vous.
$(document).ready(function () {
var dateNewFormat, onlyDate, today = new Date();
dateNewFormat = today.getFullYear() + '-';
if (today.getMonth().length == 2) {
dateNewFormat += (today.getMonth() + 1);
}
else {
dateNewFormat += '0' + (today.getMonth() + 1);
}
onlyDate = today.getDate();
if (onlyDate.toString().length == 2) {
dateNewFormat += "-" + onlyDate;
}
else {
dateNewFormat += '-0' + onlyDate;
}
$('#mydate').val(dateNewFormat);
});