2011-12-08 45 views
9

在以前的MVC 2.0應用程序中,我包含(在我的Site.Master中)對jquery.validate.min.js的CDN文件的引用,用於我所有的客戶端驗證。MicrosoftMvcValidation.js VS jquery.validate.js(Bassistance)

我現在創建一個MVC 3.0項目,我有點困惑與文章記的金額約「how to use client-side validation using MicrosoftMvcValidation.js」.

在大多數(如果不是全部)的文章,當我看到一個參考MicrosoftMvcValidation.js我也看到對jquery.validate.js的參考,這是有點混淆(考慮,在過去,我只使用了bassistance的文件)。

所以我的問題是:

  • 是什麼這兩個文件之間的差異?
  • 是否有任何已知的問題/好處使用之一?
  • 在「Scripts」文件夾中,默認情況下,它看起來像兩個文件 在那裏,但爲什麼?他們給我們的選擇還是他們的工作手 手?

任何有助於解決這個問題的幫助將會很棒!

在此先感謝!

回答

9

MVC3支持客戶端的驗證的兩種模式:

  • 古典使用驗證MicrosoftMvcValidation.js
    要啓用此,Html.BeginForm()之前調用Html.EnableClientValidation()

  • 使用jquery.validate.js和jquery.validate.unobtrusive.js(新MVC3)
    要啓用此

    不顯眼的驗證,以下settinsg添加到Web.config文件:

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

好吧,所以基本上,所有這些文件都提供在*腳本*文件夾中,以便讓您選擇M $的方式還是Bassistance的方式正確?是否有任何已知的問題使用一個或另一個或所有歸結爲優先?謝謝SLaks – Vlince

+2

@Vlince:正確。 MVC3更新更清潔;舊腳本提供與現有的MVC2項目兼容。 – SLaks

+0

謝謝SLaks,由於斯蒂芬提到的原因,我肯定會繼續使用jQuery方法。謝謝! – Vlince

6

MVC2提供了微軟自己的客戶端驗證或jQuery驗證的選擇。

MVC3繼續這一點,但只提供不顯眼的驗證(即新的HTML5驗證功能),如果你沿着jQuery路線。

在這兩種情況下,流行的看法似乎是jQuery是更好的選擇,因爲它更容易擴展和更易於使用。無需將這兩個腳本都包含在您的項目或網頁中 - 通常情況下,您會選擇一個並刪除另一個。

+0

的確,jQuery路線似乎是更好的選擇。更重要的是,如果您還計劃使用新的HTML5驗證功能。謝謝斯蒂芬。 – Vlince

相關問題