通过onclick事件调用JavaScript函数(带参数)

6
我无法使用 PHP 变量作为我的函数参数。
该函数是:
<script type="text/javascript">
function myFunction(id,name) {
    alert(id);
    alert(name);
}
</script>

这是 PHP 部分:
echo "<button onclick='myFunction($intvar,$strvar)' type='button'>ClickMe</button>";

这段话的意思是:“当我使用数字调用myFunction(0,1)时,它可以正常工作,但我需要使用变量来调用myFunction。请帮忙,谢谢。”

2
将 alert(ide); 改为 alert(id); - Vivek Singh
2个回答

6

您可以尝试使用以下代码:function myFunction(ide,name) { 将id改为ide echo "<button onclick='myFunction(".'"'.$intvar.'","'.$strvar.'"'.")' type='button'>ClickMe</button>";


5

良好的实践是回显变量的JSON编码版本,这样可以确保字符串被正确引用:

echo "<button onclick='myFunction(" . json_encode($intvar) . "," . json_encode($strvar, JSON_HEX_APOS) . ")' type='button'>ClickMe</button>";

如果提供标志JSON_HEX_APOS,则会这样做。 - dfsq
我尝试使用json_encode,也可以工作,非常感谢。 - Roberto Sepúlveda Bravo
但是现在如果使用双引号用于属性... 叹气. 问题在于没有(也从未有过)一种好的方法来在属性中提供JavaScript参数的值。这样就不能称之为[n HTML] '模板'语言了.. - user2864740

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接