【问题标题】:Javascript confirm return false if cancel如果取消,Javascript 确认返回 false
【发布时间】:2014-05-20 14:13:38
【问题描述】:

我有一个像这样的删除按钮:

<a class="btn btn-default" href="Communities.php?action=delete&id=' . $value['rb_communityId'] . '" onclick="javascript:confirm(\'Are you sure you want to delete this item?\');">Delete</a>

如果用户在我的确认后面点击取消,那么我不希望发生任何事情,如果用户点击取消它会返回 false。

【问题讨论】:

  • 这是确认的默认行为。

标签: javascript confirm


【解决方案1】:

javascript:onclick 处理程序中不需要,因为您已经在 JavaScript 上下文中。

return,然而, 需要将confirm 的返回值传递给处理程序。当点击 Cancel 时,false 被返回,然后被传递给处理程序,这将取消默认操作(跟随链接)。

最后,切勿将&lt;a href="..."&gt; 用于删除 操作。 GET 方法请求应该从不更改服务器上的内容,尤其是不删除内容。使用表单和 POST 方法。

【讨论】:

  • 一个强大的+1 用于永远不会改变服务器上的东西的GET方法。
【解决方案2】:
<a
  class="btn btn-default"
  href="Communities.php?action=delete&id=' . $value['rb_communityId'] . '"
  onclick="if(!confirm(\'Are you sure you want to delete this item?\')) return false;"
>
  Delete
</a>

更改的关键行是 onclick,其中确认已包含在 if(!...) 中以捕获单击取消的情况,如果发生这种情况则返回 false。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2017-12-07
    • 1970-01-01
    • 2012-03-23
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多