2013-04-04 58 views
0

很沮喪與我自己,因爲我知道這很簡單,我發誓,我的代碼看起來正確。我猜我只需要另一雙眼睛。未捕獲的ReferenceError:addBlogLink沒有定義

此錯誤:

Uncaught ReferenceError: addBlogLink is not defined 

被調用這條線我的PHP代碼:

<input type=\"button\" onclick=\"addBlogLink($userID,'$beerID')\" class = \"btn btn-warning\" name = \"submit\" value=\"Submit Taste Tag\"> 

的問題是,它被定義...如果我去我的JS網頁,這功能是我有:

function addBlogLink(userID, beerID) 
    { 
     //get values 
     var blogTitle = $('#blogTitle').val(); 
     var link = $('#blogLink').val(); 

     //clear div 
     $('#textToReplace').empty(); 

     //call to get new friend list 
     $('#textToReplace').load('addBeerBlog.php?u=' + userID + "&b=" + beerID + "&t=" + blogTitle + "&l=" + blogLink, 
      function() { 

     }); 

     return false; 
    } 

userID是一個i​​nt,beerID是一個字符串。我也有這樣的我的網頁上,所以我知道JS的頁面能夠被聯繫:

<script src=\"addBlog.js\"></script> 

我也知道一個int和字符串被通過,因爲當我在看網頁的源文件調用該函數,我可以看到這一點:

<input type="button" onclick="addBlogLink(3,'8NX7Sy')" class = "btn btn-warning" name = "submit" value="Submit Taste Tag"> 
+1

的問題是,*其中*是它定義建?這顯然超出了範圍。它是否存在於document.ready處理程序中?它必須是全局的才能與內聯事件處理程序一起使用。 – bfavaretto 2013-04-04 19:39:41

+0

我只是有一個單獨的js頁面: 功能{} – Mike 2013-04-04 19:41:34

+0

你確定JavaScript源加載,而不是404,因爲它是一個相對的包括哪些內容?您也可能想要清除類和名稱屬性後的間距。 – doublesharp 2013-04-04 19:44:08

回答

0

瀏覽器正在分析你的HTML標籤INPUT它知道你的函數addBlogLink存在了。

我應該嘗試的東西少obstrusive。就像這樣:

<input type="button" id="myID" class = "btn btn-warning" name = "submit" value="Submit Taste Tag"> 

和JS附加事件:

function addBlogLink(userID, beerID){ 
    // Your code here 
} 
document.getElementById("myID").onclick = addBlogLink; 

前</body>標記

0

我犯了一個愚蠢的錯誤把腳本標籤。我把:

<script src=\"addBlog.js\"></script> 

在錯誤的頁面。我忘了我看中的箱子被一個iframe不符合我的網頁PHP類

相關問題