![](/img/trans.png)
[英]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.