Поскольку невозможно вызвать функцию Javascript
, когда отображается элемент ввода или любой другой элемент html
, вы можете использовать событие document.ready
, чтобы достичь желаемого:
@Html.TextBoxFor(m =>m.cDate,
new{
@id = "textd",
@type = "text",
}
)
И когда документ готов:
$(document).ready(function () {
var ccDate= document.getElementById('textd');
updatedateFormat(ccDate);
})
Или вы можете добавить пользовательский атрибут, такой как data-onload
, для имитации события при загрузке:
@Html.TextBoxFor(m => m.cDate,
new{
@id = "textd",
@type = "text",
data_onload="updatedateFormat('@Model.cDate')"
}
)
И когда документ готов:
$(document).ready(function () {
$('[data-onload]').each(function(){
eval($(this).data('onload'));
});
})
Если вы хотите отформатировать только значение вашего свойства, вы можете сделать это с помощью функции ToString()
внутри HTML помощника:
@Html.TextBoxFor(m =>m.cDate,
new{
@id = "textd",
@type = "text",
@Value = Model.cDate.ToString("yyyy/MM/dd")
}
)