错误引入
今天轮到了验证控件来捣乱了。
在使用RequiredFieldValidator控件时,一切都设置妥当,结果出现了如下的错误。
解决方法
找了一种解决方法,就是把aspnet.scriptmanager.jquery.dl复制到bin文件夹下。这样问题就解决了,但是却出现了另一种问题,就是我一切都设置好后,却发现它怎么也不弹框。下面是我的代码,只为演示,所以没有进行代码整理。
<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文件,找一个粘贴到相应路径即可。这样,这个问题就完美的解决了。