我正在回复一个带有php的html表单,其中包含以下几行:
<a class='btn btn-sm btn-danger pull-right' onClick=return confirm('Delete This account?'); href='".url('deleteuser/'.$order->id)."' >Delete</a>
这正确地转到指定的网址。但是,永远不会触发onClick方法。非常感谢任何帮助。
答案 0 :(得分:3)
编辑:澄清纯HTML与回音字符串。
在onclick属性值周围加上引号。 即纯HTML:
onClick="return confirm('Delete This account?');"
因此,如果您通过echo输出此内容,则需要使用反斜杠转义相应类型的引号字符。
echo 'onClick="return confirm(\'Delete This account?\');"';
或
echo "onClick=\"return confirm('Delete This account?');\"";
答案 1 :(得分:2)
Upvoted @faintsignal回答是因为它是正确的,你引起了单引号的混淆,但更好的方法是将PHP与HTML分开:
<?php
foreach($someItem as $someKey => $order){
?>
<a class="btn btn-sm btn-danger pull-right" onClick="return confirm('Delete This account?');" href="<?php echo url('deleteuser/'.$order->id); ?>">Delete</a>
<?php
}
?>
只是提供一种替代方案,而且它通常被认为是良好的做法,因为你有明确的职责分离和更容易维护。
编辑:提供了一个使用foreach
的超级通用示例,显然你可以修改你的设置,但它表明你可以分开这个功能,它会运行得很好。