[英]Getting error Function is not defined at HTMLAnchorElement.onclick while calling javascript function
[英]JavaScript variable is not defined at onclick button while calling a function
我試圖在引導按鈕中將PHP變量傳遞到onclick()
中,下面是代碼,請注意,它在PHP回顯中:
<button id="reportTopicButt" class="btn btn-danger" onclick="reportTopic('.$topicID.')">
<i class="fa fa-flag"></i></button>
$ topicID是我從查詢中獲得的一個PHP變量,它在一個PHP函數中聲明,這就是上面的代碼是echo語句的原因。
這是我的reportTopic()
JavaScript函數:
function reportTopic(aTopicID) {
var topicID = aTopicID;
$.ajax({
url:"report-topic.php?topicID=" + topicID,
type: "GET",
success:function(data) {
var results = data;
console.debug(results);
alert('Thanks for reporting');
}});
}
有趣的是,Chrome控制台會打印出我需要的ID,但這會給我以下錯誤:
Uncaught ReferenceError: CRFYLtWNDD is not defined
at HTMLButtonElement.onclick
CRFYLtWNDD是我的$ topicID PHP變量,所以至少我知道onclick()
按鈕可以正確獲取它,但是我真的不知道為什么未定義它。
這是因為$ topicId呈現為變量以解決它,將其設置為php中的字符串
<button id="reportTopicButt" class="btn btn-danger" onclick="reportTopic(\''.$topicID.'\')">
<i class="fa fa-flag"></i></button>
因為您要向函數傳遞字符串,所以如果不這樣做,則應在''之間包括它,否則javasript會認為您正在傳遞變量,這就是為什么會出現未定義錯誤的原因
嘗試這個
onclick="reportTopic(\''.$topicID.'\')">
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.