2011-02-23 31 views
1

時得到預期的對象錯誤,我有這樣的jQuery的:使用的onchange()的文本框

<input type = "text" name ="text1" id ="text1" onchange="displayresult()"> 


function displayresult(){ 
    alert("testing") 
} 

一個文本框它在IE6.o給對象預期的錯誤。當我們在Mozilla調試它是指向以這種方式函數名

`function onchange(event) { 
    displayresult(); //The cursor is pointed over here 
}` 

我怎樣才能糾正這種

回答

2

通過您的描述和您的示例,我認爲您的displayresult()函數聲明低於'onchange'輸入文本用法。下面的解決方案使用document.ready()事件,然後使用ID選擇器和.change()註冊'onchange'需求。你可以刪除onchange =「displayresult();」在你的HTML中,如果你使用我的代碼如下

<script> 
function displayresult(){ 
    alert("testing"); 
} 
$(document).ready(
    function(event){ 
    $("#text1").change(function(event){ 
     displayresult(); 
    }); 
}); 
</script> 
+0

你是解決我的問題的人。非常感謝 – Someone 2011-02-23 17:11:40

0

如果你正在使用jQuery的 - 你應該能夠通過jQuery只使用選擇連同它的change()來幫助你,這樣你就不需要輸入聲明中的displayresult()。這將有助於淘汰掉:

例子:

$(document).ready(function() 
{ 
    $('#text1').change(function() 
    { 
     alert("testing"); 
    }); 
}); 

因此,每個文本在文本改變時,你會被驚動。

+0

你需要確保 - 至少提到 - 這需要在文檔就緒處理程序。 – 2011-02-23 16:39:24

+0

謝謝馬特 - 爲了簡潔起見,我把它留了下來,但我只是重新加入了它。 – 2011-02-23 16:40:49

0

您尚未提供足夠的信息來準確確定錯誤發生的原因。我猜想你的功能在頁面上沒有很快定義。另外,你已經將這個問題標記爲jQuery相關,但在你的代碼中你根本沒有引用jQuery。

如果你想使用jQuery Rionmonster是正確的。

如果你想使用沒有jQuery的javascript,那麼你需要提供更多的信息。