WebForms UnobtrusiveValidationMode 需要“jquery”ScriptResourceMapping。

來源:互聯網
上載者:User

標籤:.net   asp.net   jquery   經驗   

         相信有過ASP.NET學習經驗的人對RequiredFieldValidator控制項(驗證非空控制項)一定不會陌生,該控制項的作用是禁止輸入規定的內容(即屬性InitialValue的值,該屬性預設值為空白字串,我們經常用來驗證使用者輸入的內容是否為空白。)。另外,在驗證前會自動去掉輸入內容兩端的空格。


         今天在練習該控制項的使用的時候遇到了如下問題:



         錯誤原因

         VisualStudio 2012(或2013) WebForm 4.5 開發中,很多控制項預設Enable了 Unobtrusive ValidationMode(所謂Unobtrusive Validation,就是一種隱式的驗證方式)的屬性(和jquery的引用相關),但並未對其進行賦值, Programmer必須手動對其進行設定。比如,在進行資料驗證時使用的各種validator(今天使用的RequiredFieldValidator控制項),以及進行authorization及authenication設定時,由於需要在前端調用jquery來進行身分識別驗證,都預設Enable了 Unobtrusive ValidationMode。如果不對該屬性進行配置,將會產生ERROR。


         解決方案

         從錯誤產生的原因我們能很容易的對症下藥,從錯誤原因中我們得到的解決問題的方法無非有三:

         1、  在程式允許的情況下,降低.Framework的版本,具體方法如下:

<!--修改前--><system.web>    <compilation debug="true" targetFramework="4.5" /><httpRuntime targetFramework="4.5" />     <!—將其刪除--></system.web><!--修改後--><system.web>    <compilation debug="true" targetFramework="4.0" /></system.web>

         2、更改Web.config設定檔設定Unobtrusive ValidationMode的類型,具體方法如下:

<!--修改前--><system.web>    <compilation debug="true" targetFramework="4.5" /><httpRuntime targetFramework="4.5" /></system.web><!--修改後--><system.web>    <compilation debug="true" targetFramework="4.5" /><httpRuntime targetFramework="4.5" /></system.web><appSettings>    <add key="ValidationSettings:UnobtrusiveValidationMode" value="None" /></appSettings>

         3、找到相應的Jquery(aspnet.scriptmanager.jquery.dl)檔案將其複製到bin檔案夾下。

         由於我是建立的空Web應用程式,因此沒有添加Jquery。我們可以通過建立一個非空的Web應用程式將裡面的對應的Jquery檔案粘貼到上文提到的檔案夾下。

 

         以上三種方法個人比較傾向於第三種,第一、第二種給人一種逃避問題的感覺,第三種方法才是發現問題就解決問題的王道(個人理解)。於此同時,在解決這個問題的過程中也看了很多部落格,每個人也或多或少的給出了類似的方法,但是去描述問題產生的原因的卻很少。這可能是中國軟體頁受制於人的部分原因吧。

 

(菜鳥拙作,如有紕漏望您不吝賜教)

 

協助連結:http://www.shaoqun.com/a/56680.aspx

轉載請註明出處:http://blog.csdn.net/senior_lee






聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.