【问题标题】:SCRIPT5009: 'Page_ClientValidate' is undefinedSCRIPT5009:“Page_ClientValidate”未定义
【发布时间】:2015-08-26 21:46:27
【问题描述】:

在 Internet Explorer 11 中运行代码时出现错误。在 FF 和 Chrome 上运行时它运行良好。我还在 windows server 2003 服务器上检查了 IE 8,它可以工作。

错误 SCRIPT5009:“Page_ClientValidate”未定义

javascript代码:

function systemValidation() {
   if (Page_ClientValidate()) { .. } }

任何想法为什么它失败了?

更新

我也尝试了下面的代码,但仍然无法正常工作。好烦啊。。

        function validateThis() {
        if (typeof (Page_ClientValidate) === 'function') {
            var isPageValid = Page_ClientValidate('');
            if (isPageValid) {
                alert("page valid");
                return true;
            }
        }
        alert("page NOT valid");
        return false;
    }

还有其他替代方法可以完成相同的任务吗?

【问题讨论】:

标签: javascript asp.net internet-explorer


【解决方案1】:

还有一点,您可以通过稍微更新代码来防止运行时错误:

typeof(Page_ClientValidate) === "function"

【讨论】:

  • 我试过了。不走运,我用代码更新了问题,你的意思是 3 个等号吗?还是2个等号?我都试过了。不工作
  • 您能否为您的 javascript 打开调试并告诉我们哪一行引发了错误?我假设这次它尝试执行:“var isPageValid = Page_ClientValidate('');”
  • 是的,它失败了异常说:Page_ClientValidate is undefined。
【解决方案2】:

此方法 IIRC 是 asp.net 客户端验证库的一部分。如果 JS 文件由于某种原因没有添加这些方法(例如,您没有生成与 WebForms 相关的应用程序),您可能会遇到麻烦。 至少需要一个控件才能发出此獾:

Jscript 包括 src="/aspnet_client/system_web/1_0_3617_0/WebUIValidation.js

检查这里: http://msdn.microsoft.com/en-us/library/aa479045.aspx#aspplusvalid_clientside

【讨论】:

  • 在哪里可以找到那个 js 文件?
  • 它是由框架发出的 js 文件,当特定类型的控件(我相信验证控件 - 上面的人对此进行了解释)进行更深入的了解时,请查看我包含的链接。
【解决方案3】:

您能否确认您的布局包含任何验证控件和 EnableClientScript="true",例如:

<asp:RequiredFieldValidator id="TextBoxRequiredValidator" 
        controltovalidate="MyTextBox"
        enableclientscript="True"
        display="Dynamic" 
        errormessage="Please enter a value."
        text="*"
        runat="server"/>

【讨论】:

  • 您是否提供了多个答案?回答是不是不好的形式走开找出实际发生的事情然后添加另一个答案?我已经几乎解决了这个问题!
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2012-04-19
  • 2013-02-22
  • 1970-01-01
  • 1970-01-01
  • 2013-12-16
  • 2011-09-06
相关资源
最近更新 更多