錯誤引入
今天輪到了驗證控制項來搗亂了。
在使用RequiredFieldValidator控制項時,一切都設定妥當,結果出現了如下的錯誤。
解決方案
找了一種解決方案,就是把aspnet.scriptmanager.jquery.dl複製到bin檔案夾下。這樣問題就解決了,但是卻出現了另一種問題,就是我一切都設定好後,卻發現它怎麼也不彈框。下面是My Code,只為示範,所以沒有進行代碼整理。
<asp:TextBox ID="TextBox1" runat="server" CausesValidation="True"></asp:TextBox> <asp:RequiredFieldValidator ID="RequiredFieldValidator1" Text="*" ControlToValidate="TextBox1" runat="server" ErrorMessage="RequiredFieldValidator"></asp:RequiredFieldValidator> <asp:Button ID="Button1" runat="server" Text="Button" OnClick="Button1_Click" /> <asp:ValidationSummary ID="ValidationSummary1" ShowMessageBox="true" runat="server" />
細心的你,不論怎麼找,上面的錯誤你也找不到,因為上面的代碼沒有問題。我在改了另外一個錯誤後,這段代碼是可以啟動並執行。
控制項講解
首先我們先來介紹一下RequiredFieldValidator這個控制項,這個控制項用來驗證文字框是否為空白。
ControlToValidate:指明要監控的控制項
ErrorMessage:發生錯誤時,要彈出的話
Text:發生錯誤時,RequiredFieldValidator顯示的文本
配合其一期使用的是ValidationSUmmary,個人理解這個控制項是對上面的驗證控制項進行一種總結。
ShowMessageBox:當發生錯誤時是否顯示對話方塊
ShowSummary:當發生錯誤時,在ValidationSummary的位置,顯示錯誤訊息
當然,上面兩個控制項還有其他的屬性,我只是說了一下常用的而已。
控制項進階
現在再說一下到底是原因導致了進行了上面的設定,卻沒有彈窗。我的這個是自己建的空Web應用程式,通過調試工具,我發現網頁中有引入jquery的語句,而建的空Web應用程式,沒有將jquery添加到程式中。
如果你建立一個表單應用程式(不是空的),那麼你會看到又一個Scripts檔案夾,裡面就有jquery版本號碼.js這個檔案。
在瀏覽器中通過調試工具的控制台,看一下少哪個版本的Jquery檔案,找一個粘貼到相應路徑即可。這樣,這個問題就完美的解決了。