我有这个代码
echo '<div class="bottomright"><a href="?id='
. $topic_id
. '&part=5"><img src="../assets/icons/Comments- edit.png" /></a><a href="?id='
. $topic_id
. '&part=6"><img src="../assets/icons/Lock.png" /></a><a href="#" onclick="return confirm("Are you sure?")"><img src="../assets/icons/Trash.png" /></a></div>';
当我点击垃圾箱时.png它应该问"你确定"?但它没有...
我在这里错过了什么吗?
问题是:
onclick="return confirm("Are you sure?")"
请注意引用的歧义。您必须以某种方式更改引号才能正确配对,可能是通过转义一组单引号。以下两个工作:
onclick="return confirm(''Are you sure?'')"
onclick=''return confirm("Are you sure?")''
<a href="#" onclick="return confirm(''Are you sure?'')">
您必须转义单引号。
因为:
onclick="return confirm("Are you sure?")"
不是JavaScript
有效。(注意"
冲突)onclick="return confirm('Are you sure?')"
不会PHP
有效(注意冲突'
因为整个 echo 函数都包装在单引号内)
另一种选择是这样做:
'<a href="#" onclick="return confirm('. "'Are you sure?'" .')">'
这实际上关闭了echo
引号,连接了'Are you sure?'
并连接了其余的引号。