2012-11-26 255 views
0

我有完整的項目,我想使用mvc驗證。來自客戶端的ASP.NET MVC服務器端驗證

這裏是我的控制器保存方法,我從JavaScript調用AJAX:

public void Save(Activity activity) 
{ 
    using (ActivityManager manager = new ActivityManager()) 
    { 
     manager.SaveActivity(activity); 
    } 
} 

由於我的保存方法是無效的,我不希望使用Model.IsValid服務器端驗證,因爲由於ajax調用,我不能也不想返回一個action結果。

我需要客戶端驗證,即使用服務器端模型屬性,但我沒有找到任何工作解決方案。

+0

在這種情況下,您應該需要手動檢查函數中的驗證約束。 –

+1

你知道jQuery Validation的'remote'驗證嗎?檢查此鏈接:http://develoq.net/2011/asp-net-mvc-3-remote-validation-with-jquery/ –

回答

0

我相信你應該能夠用數據註解來裝飾你的類,然後使用jQuery驗證做客戶端驗證:

類定義:

public class Person{ 

[Required(ErrorMessage="This field is required")] 
public int ID {get;set;} 

} 

JS/jQuery的工作:

$("form").submit(function(){ 
    if($("form").valid()){ 
     return true; 
    }else{ 
     return false; 
    } 
}); 
+0

感謝您的回答,我也一樣,但我不知道爲什麼,但驗證在空字符串字段上返回真值。此驗證是否使用服務器端模型屬性驗證? – Concware

相關問題