【问题标题】:Javascript confirmation popupJavascript 确认弹出窗口
【发布时间】:2012-09-10 10:47:26
【问题描述】:

我是 javascript 和 web 开发的新手,现在我正在尝试使用 codeigniter,我想在删除链接上设置一个 javascript 确认框。现在我使用它让它工作得相当好:

<script type="text/javascript">
    function con(message) {
        var answer = confirm(message);
        if (answer)
        {
            return true;
        }

        return false;
    }
</script>

还有这个:

echo '<a href="/groups/deletegroup/'.$group->id.'" OnClick="return con(\'Are you sure you want to delete the group?\');" class="btn small light-grey block">Delete</a>';

我遇到的问题是第一次点击链接时没有弹出窗口,但之后的每次点击都可以正常工作。我也觉得也许我应该使用 document.getElementById 和 window.onload 让它正常工作。 任何帮助将不胜感激。

我最终使用了一个如下所示的 jquery 解决方案:

$(document).ready(function (){
$('.delete').click(function (e) {
    e.preventDefault();
    var href = $(this).attr('href');
    $.msgAlert({
        title: 'Delete'
        ,text: 'Do you really want to delete this group?'
        ,type: 'error'
        ,callback: function () {
                location.href = href;
        }
    });
})

});

我将商业 msgUI 用于 msgAlert 框。

【问题讨论】:

  • 脚本标签是在代码中链接声明的上方还是之后?
  • 在页面上方
  • 直接试试onclick="return confirm('Are you sure you want to delete the group?')"
  • 谢谢!直接的工作:)

标签: javascript onclick confirmation


【解决方案1】:

试试这个...

HTML:

<a href="#" id="btn-delete">Delete</a>

JS:

//window.onload = function() {
    var btnDelete = document.getElementById('btn-delete');
    btnDelete.onclick = function() {
        var message = 'Are you sure you want to delete the group?';
        if (confirm(message)) {
            // delete something...
        }
    }
//};

http://jsfiddle.net/PEHx9/

【讨论】:

  • 我正在尝试这个,但它没有弹出任何内容,并且我的 javascript 控制台将其吐出:Uncaught SyntaxError: Unexpected token ILLEGAL
  • 你有什么浏览器/版本?
  • 仅链接的答案不是未来的证明,请在您的答案中包含相关代码。
猜你喜欢
  • 1970-01-01
  • 2012-02-20
  • 1970-01-01
  • 2011-03-24
  • 2011-10-19
  • 2022-01-15
  • 1970-01-01
  • 1970-01-01
  • 2017-04-09
相关资源
最近更新 更多