2011-11-02 71 views
1

我似乎無法獲得客戶端驗證在asp.net mvc3應用程序中工作。在配置我客戶端驗證不在asp.net工作mvc

<add key="ClientValidationEnabled" value="true" /> 
    <add key="UnobtrusiveJavaScriptEnabled" value="true" /> 

在我_Layout.cshtml我有

<script src="@Url.Content("~/Scripts/jquery-1.5.1.min.js")" type="text/javascript"></script> 

在我的網頁我有

<script src="@Url.Content("~/Scripts/jquery.validate.min.js")" type="text/javascript"></script> 
<script src="@Url.Content("~/Scripts/jquery.validate.unobtrusive.min.js")" type="text/javascript"></script> 

我只是玩弄使用MVC 3 EF 4我的模型類只有一個必需的字段,但客戶端驗證不會觸發。它總是回發。有任何想法嗎?

+1

您可以發佈您期望驗證的模型嗎? – Jesse

+0

驗證確實發生。它只發生在服務器端。這不是在客戶端發生的。 – daustin

回答

0

你在模型中使用什麼進行驗證?這裏是一個快速簡便的方法:

using System.ComponentModel.DataAnnotations; 

namespace YourNs 
{ 
    public class YourModel 
    { 
     [Required] 
     public string SomeRequiredString { get; set; } 
    } 
} 

現在您的這個模型視圖,如果有必要的腳本中引用應該有客戶端驗證。這一切都通過[Required]屬性。

+2

目前,我只使用EF生成的類。當它回發它確認所需的字段,這只是客戶端應該開火,事實並非如此 – daustin

0

我不知道是你的情況是可行的,但我通過調用.validate()函數得到驗證:

var validator = $('#formData').validate(); 
     if ($('#formData').valid()) { 
      //alert('valid'); 
      return true; 
    } 

希望能幫助

0

確保這些appSettings是在你的根Web.config

<appSettings> 
    <add key="ClientValidationEnabled" value="true" /> 
    <add key="UnobtrusiveJavaScriptEnabled" value="true" /> 
</appSettings>