ASP.NET MVC - كيفية إضافة فئة إلى html.editorfor عندما توجد فصول بالفعل بسبب التحقق من صحة 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. "Date" هو اسم اختصار في 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"})
لا تنتمي إلى StackOverflow