2012-11-19 69 views
4

我想使用$(document).ready(function(){})之外定義的javascript函數;作爲$ .get()請求的回調。然而,螢火顯示:ReferenceError從JQuery.get調用正常的javascript函數作爲回調

ReferenceError: temp is not defined 
    $.get('twitter.php', function(data){temp(data)}); 

下面是相關代碼:

<script src="http://code.jquery.com/jquery-1.8.2.js"></script> 
<script type="txt/javascript">  
    function temp(data){ 
     alert(data); 
    } 
</script> 
<script> 
    $(document).ready(function() { 
     $.get('twitter.php', function(data){temp(data)}); 
    }); 
</script> 

twitter.php不會返回數據。

+2

不使用腳本類型= 「」。這不是必需的。 –

+0

@AndyRay - 至少不在'html5'中,但舊的doc類型仍然需要它。 –

+0

@TravisJ不正確http://stackoverflow.com/questions/5265202/do-you-need-text-javascript-specified-in-your-script-tags它只是在所有地方都有效的那些意想不到的事情之一 –

回答

1

你有你的腳本類型設置爲'txt/javascript',如果我不mistaen,它應該是'text/javascript',你的函數之後還需要一個分號。

<script type="text/javascript">  
    function temp(data){ 
     alert(data); 
    }; 
</script> 
+2

分號不需要。只有當函數被分配給一個變量時纔有必要。 –

3

刪除type="txt/javascript",或將其更改爲text/javascript

1

你有這使腳本無效小語法錯誤,type="txt/javascript"應該是:

<script type="text/javascript">  
function temp(data){ 
    alert(data); 
} 
</script> 
2

function temp(data){ 
    alert(data); 
} 

上述

$(document).ready(function(){ 

}); 
+0

我的意思是你的相關代碼必須是 ' – Midincihuy