您好, 欢迎来到 !    登录 | 注册 | | 设为首页 | 收藏本站

单击链接时如何显示确认对话框?

单击链接时如何显示确认对话框?

以最简单的方式,您可以confirm()在内联onclick处理程序中使用该函数

<a href="delete.PHP?id=22" onclick="return confirm('Are you sure?')">Link</a>

但是通常情况下,您希望将HTML和Javascript分开,所以我建议您不要使用内联事件处理程序,而应在链接上放置一个类并为其添加事件侦听器。

<a href="delete.PHP?id=22" class="confirmation">Link</a>
...
<script type="text/javascript">
    var elems = document.getElementsByClassName('confirmation');
    var confirmIt = function (e) {
        if (!confirm('Are you sure?')) e.preventDefault();
    };
    for (var i = 0, l = elems.length; i < l; i++) {
        elems[i].addEventListener('click', confirmIt, false);
    }
</script>

仅在现代浏览器中有效(对于较旧的IE,您可以使用attachEvent()returnValue并为getElementsByClassName()jQuery之类的库提供实现或使用该库来解决跨浏览器问题)。您可以在MDN上阅读有关此高级事件处理方法的更多信息。

我想远离被认为是jQuery迷的地方,但是DOM操作和事件处理是两个在浏览器差异方面最有用的地方。只是为了好玩,这就是jQuery的外观:

<a href="delete.PHP?id=22" class="confirmation">Link</a>
...
<!-- Include jQuery - see http://jquery.com -->
<script type="text/javascript">
    $('.confirmation').on('click', function () {
        return confirm('Are you sure?');
    });
</script>
其他 2022/1/1 18:14:13 有599人围观

撰写回答


你尚未登录,登录后可以

和开发者交流问题的细节

关注并接收问题和回答的更新提醒

参与内容的编辑和改进,让解决方法与时俱进

请先登录

推荐问题


联系我
置顶