ASP.NET MVC - Как добавить класс в HTML.Editorlor, когда занятия уже существуют из-за ненавязчивого валидации JS?
-
28-09-2019 - |
Вопрос
Я пытаюсь добавить Class
к тому EditorFor
Помощник внутри А.Н. EditorTemplate
.
Проблема в том, что я использую Ненавязчивая проверка, входной элемент уже имеет заданные классы.
Вот мой редактор
@Inherits System.Web.Mvc.ViewUserControl(Of Nullable(Of Date))
@Html.TextBox("", If(Model.HasValue, String.Format("{0:MM/dd/yyyy}"), String.Empty), New With {.class = "datepicker"})
И вот вывод
<input class="text-box single-line" id="BirthDate" name="BirthDate" type="text" value="08/08/1980" />
Вы можете увидеть здесь, что datepicker
Класс не был добавлен, но «стоимость» было правильно отформатировано.
В основном я вижу, что EditorTemplate
работает, но Class
не добавляется до остальных классов на <input>
элемент.
Вы знаете, как это исправить?
Решение
Оказывается, я должен был добавить <UIHint("Date")>
к моему классу приятелей.
Все снова.
@ModelType Date?
@Html.TextBox("", If(Model.HasValue, String.Format("{0:MM/dd/yyyy}", Model), String.Empty), New With {.class = "datepicker"})
Вот причина для Uihint.
Имя шаблона по умолчанию основано на имени типа CLR, в этом случае dateTime. «Дата» - это яркое имя в VB, а не название реального типа (много как «int» в C # действительно ярлык для CLR «INT32»).
Другие советы
попробуй это
@Inherits System.Web.Mvc.ViewUserControl(Of Nullable(Of Date))
@Html.TextBox("", If(Model.HasValue, String.Format("{0:MM/dd/yyyy}"), String.Empty), new {.class = "datepicker"})