У меня есть вид, и он использует вспомогательный метод TextBoxFor для редактирования модели. Как это:
<div class="editor-field">
<%:Html.TextBoxFor(model => model.Property, new { @class = "mybox" })%>
<%: Html.ValidationMessageFor(model => model.Property)%>
</div>
Итак, Modelbinder работает отлично, и я могу редактировать и сохранять свою модель.
Когда я добавляю html5 атрибуты 'type' и 'step', как это
<div class="editor-field">
<%:Html.TextBoxFor(model => model.Property, new { @class = "mybox",@type = "number", @step = "1" })%>
<%: Html.ValidationMessageFor(model => model.Property)%>
</div>
Я вижу красивое числовое управление вместо текстового поля, но привязка модели тормозит, и всякий раз, когда я меняю свое свойство, я получаю 0 в моей модели. Свойство при отправке.
Что не так с моим кодом?
Это моя простая модель
public class Model
{
[DisplayName("Property")]
public int Property
{
get;
set;
}
}
Натан, мое объяснение проблемы здесь не точное. Здесь Ajax Form разрывается после добавления атрибутов html5 в Chrome / Safari - лучшее описание и обходной путь.