说明:
我有一个PHP脚本,在html页面上显示div
echo '<div class = "star_box" id = "'.$each_status['post_id'].'" onmousedown = "star_it(this.id)"></div>';
现在,当我点击这个div时,star_it函数被调用并且它工作正常......
问题
我想在它的功能中传递另一个参数..像这样
echo '<div class = "star_box" id = "'.$each_status['post_id'].'" onmousedown = "star_it(this.id,'.$each_status['regno'].')"></div>';
或简单字母(如果有star_it(this.id,s)
但是当我这样做时,该函数停止工作,因为当我单击div时,函数不会被调用....
我不知道为什么我被卡住了,现在我的星级评分系统不起作用......我完全不知道出了什么问题
任何人?
答案 0 :(得分:3)
您应该修改字符串引用,如下所示:
<?php
$status = "second test";
echo '<div class="star_box" id="'.$id.'" onmousedown="star_it(this.id,'."'".$status."'".');" >Hello</div>';
?>
<script>
function star_it(foo1,foo2){
console.log(foo1);
console.log(foo2);
}
</script>
此示例适用于我。
使用您的代码:
<?php
echo '<div class="star_box" id="'.$id.'" onmousedown="star_it(this.id,'."'".$each_status['regno']."'".');" >Hello</div>';
?>
答案 1 :(得分:2)
你去吧
echo '<div class = "star_box" id = "'.$each_status['post_id'].'" onmousedown = "star_it(this.id,\''.$each_status['regno'].'\')"></div>';
你忘记在你的字符串之前和之后添加\',浏览器上的JS引擎会将你的字符串视为一个未定义的变量,因此该函数将无效。
//我的英语不太好。
答案 2 :(得分:-1)
尝试
echo '<div class = "star_box" id = "'.$each_status['post_id'].'" onmousedown = "star_it(this.id,\"'.$each_status['regno'].'\")"></div>';