IE中的JavaScript运行时错误

时间:2013-06-04 10:19:02

标签: c# javascript asp.net

我的页面上有一些JavaScript出现此错误:

JavaScript runtime error: The value of the property 'ToggleValidators' is null or undefined, not a Function object

我一直试图解决这个问题很长时间,我似乎无法做到这一点。

脚本应该做的是关闭页面上所需的字段验证器,然后在按下按钮时将它们打开。

JavaScript代码:

<script type="text/javascript" src="Scripts/jquery-1.4.1.js">

$(document).ready(function () {
    $('body').fadeIn(500);

    //Turn off all validation = it's switched on dynamically
    $.each(Page_Validators, function (index, validator) {
        ValidatorEnable(validator, false);
    });
});

function ToggleValidators('g2') 
{
  $.each(Page_Validators, function (index, validator) {
        if (validator.validationGroup == g2) 
        {
            ValidatorEnable(validator, true);
        }
        else 
        {
            ValidatorEnable(validator, false);
        }
    });
}

在按钮上:

<asp:Button ID="btnSubmit" runat="server" onclick="btnSubmit_Click" Text="Submit" ValidationGroup="g2" OnClientClick="ToggleValidators('g2');" />

我的代码有什么问题?

1 个答案:

答案 0 :(得分:0)

错误消息基本上意味着无法找到函数ToggleValidators,即它可能永远不会被创建。

看起来您的代码位于script标记内,并带有src属性。您必须将代码放在自己的脚本元素中:

<script type="text/javascript" src="Scripts/jquery-1.4.1.js"></script>
<script>
    // your code here
</script>

否则代码甚至不会被评估(并且函数不会被创建,就像错误消息所说的那样)。

当然,您的代码可能存在其他问题(例如参数定义的引号)。