JS報錯修改日記(1):Uncaught ReferenceError: showQRcode is not defined


為了加一個查看二維碼的功能,如:

       
     //頁面內按鈕
     <a class="manipulate-btn" href="#" onclick="showQRcode(<%#Eval("id")%>,<%#Eval("community_id")%>)">預覽</a>


     //創建窗口 function showQRcode(user_id,community_id){ var objNum = arguments.length; var d = top.dialog({ width: "1", title: '用微信掃描二維碼預覽', url: 'dialog/dialog_QRcode_business.aspx?url='+<%=getPreview()%> +'user_id='+user_id+'&community_id='+community_id , onclose: function () { var trHtml = this.returnValue; if (trHtml.length > 0) { $("#item_box").append(trHtml); } } }).showModal(); //檢查是否修改狀態 if (objNum == 1) { d.data = obj; } }

運行之后老是會報錯:Uncaught ReferenceError: showQRcode is not defined

1.嘗試在$(function() {})中添加此段代碼($(function() {});是$(document).ready(function(){ })的簡寫),無果。

 $(document).ready 里的代碼是在頁面內容都加載完才執行的,你直接寫到script標簽里,當頁面加載完這個script標簽就會執行里邊的代碼了,如果你標簽里執行的代碼調用      了當前還沒加載過來的代碼或者dom,那么就會報錯。

2.百度此錯誤,得出結論:JS文件引用問題。

   然后修改引用路徑由相對路徑改為絕對路徑,無果。

3.懷疑是iframe的鍋,遂將該頁面的地址輸入地址欄,單獨打開此頁面。

   發現剛進頁面就提示報錯:QRcode_apply_list.aspx:306 Uncaught SyntaxError: Unexpected token :

   原因:

 url: 'dialog/dialog_QRcode_business.aspx?url='+<%=getPreview()%> +'user_id='+user_id+'&community_id='+community_id ,

這一行中的 <%=getPreview()%>未添加單引號,改正:

url: 'dialog/dialog_QRcode_business.aspx?url='+'<%=getPreview()%>' +'user_id='+user_id+'&community_id='+community_id ,

 

總結:出現問題細心排查,從頭重現問題,勿遺漏。


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM