链接未要求用户确认

Link not asking user to confirm

本文关键字:用户 确认 链接      更新时间:2023-09-26

我有这个代码

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?'并连接了其余的引号。