2013-06-04 70 views
0

我得到這個錯誤有一些JavaScript我的網頁上:的JavaScript運行時錯誤在IE

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');" />

什麼是我的代碼的問題?

+2

你的函數參數在它周圍有引號...... –

+1

它看起來像你的代碼在's'標籤'src'屬性中。你必須把你的代碼放在它自己的'script'元素中。否則,代碼甚至不會被評估。但是由於你的HTML有點不完整,這只是一個猜測。提供更完整的代碼示例,對我們來說更容易幫助您。 –

+0

@FelixKling這是問題!謝謝。它總是你想念的最小的東西 –

回答

0

錯誤消息基本上意味着找不到函數ToggleValidators,即它可能是從未創建的。

它看起來像你的代碼是標籤src屬性。你必須把你的代碼在自己的腳本元素:

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

否則代碼甚至不會進行評估(該函數將不會被創建,就像錯誤消息說)。

當然,您的代碼可能還有其他問題(例如參數定義的引號)。

+0

雖然這是主要問題,並且這固定了它:/ –