“WebForms UnobtrusiveValidationMode 需要“jquery”ScriptResourceMapping

错误引入


        今天轮到了验证控件来捣乱了。

        在使用RequiredFieldValidator控件时,一切都设置妥当,结果出现了如下的错误。

        “WebForms UnobtrusiveValidationMode 需要“jquery”ScriptResourceMapping_第1张图片



解决方法


        找了一种解决方法,就是把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文件,找一个粘贴到相应路径即可。这样,这个问题就完美的解决了。

你可能感兴趣的:(“WebForms UnobtrusiveValidationMode 需要“jquery”ScriptResourceMapping)