1

當頁面包含jquery.validate.unobtrusive.js時,如何向MVC3表單添加額外的jQuery驗證規則?結合'普通'jQuery驗證與不顯眼

我有一些'手動'創建的元素在表單的底部,我想添加一些簡單的客戶端驗證,但與不顯眼的腳本加載,以下不起作用,即字段不驗證。

$("#myForm").validate({ 
    rules: { 
    "broadcast-blockSize": { 
     required: true, 
     number: true 
    } 
} 
+0

請參見下面的文章[伊姆蘭俾路支的博客] (http://weblogs.asp.net/imranbaloch/archive/2011/07/13/overriding-unobtrusive-client-side-validation-settings-in-asp-net-mvc-3.aspx) – Neilski

回答

0

儘管我對客戶端代碼沒有多少經驗,但我正在幫助我的同事查找一些指針。我發現了很多鏈接,但他們沒有爲他工作(也許是因爲大多數是MVC3,而他正在使用MVC4)。
但是,他想出了一種在MVC3中實現它的方法,所以我只是發佈該代碼。我不知道它是否適用於MVC3(由OP提出要求),但我希望它能幫助某人。

當使用不引人注目的驗證大多數字段我的同事下方在EditorTemplate的底部增加了使用類似於代碼的代碼規則(一Partialview):

... 
</fieldset> 
@this.ScriptBlock(
    @<script> 
     $(function() { 
      ... 
      $("#@Html.IdFor(m=>m.Referral)").rules("add", { 
       required: "#requires-referral-ja:checked", 
       messages: { required: "The field Referral is required." } 
      }); 
     }); 
     ... 
    </script> 
)