我在審覈和一致性問題,當涉及到某些視圖中的客戶端驗證錯誤。該視圖由多個(子)部分視圖組成,基本上是在許多地方使用MVC /剃刀的Html.Textbox()
和Html.TextBoxFor()
的表單。在一些局部視圖中,我需要輸入不是強類型的,因此只有TextBox()
,在這些情況下,驗證不會觸發輸入框的客戶端樣式。MVC Html.TextBox(不適用)客戶端驗證樣式
我知道ModelState無效,並且Html.ValidationSummary()
顯示了來自由TextBox()
和TextBoxFor()
觸發的驗證錯誤的正確錯誤消息。然而,只有TextBoxFor()
才能獲得該類:「輸入驗證錯誤」
問題:如何在發生錯誤時將我的TextBox()
的紅色變爲紅色? (簡單的說)。我認爲有一個缺少JQuery驗證觸發的值或屬性。
代碼:
作品:@Html.TextBoxFor(x => x.Owner, new { @class = "form-control" })
並不:@Html.TextBox(name, Model.Name, new { @class = "form-control" })
HTML輸出
作品:<input class="input-validation-error form-control" data-val="true" data-val-required="Input is required." id="Owner" name="Owner" type="text" value="">
並不:<input class="form-control" id="Applicants_1__Name" name="Applicants[1].Name" type="text" value="">
重置你試圖添加數據-VAL屬性到TextBox代碼例如 @ Html.TextBox(name,Model.Name,new {@class =「form-control」,data-val =「true」,data-val-required =「需要輸入」}) – Whiplash450 2015-02-05 15:59:41
是的,除了「 data-val =「true」「,帶連字符,導致無法解析符號,但」data_val =「true」,data_val_required =「Input is required」也不起作用 – skepnaden 2015-02-05 16:09:49
data-val- *屬性爲因爲'name'的值不是你模型中的一個屬性,所以它不會被讀取,所以它們不會被添加!使用強類型助手(如果你認爲你不能,那麼你做錯了) – 2015-02-05 21:57:53