javascript - jQuery 隐藏字段未设置多次

标签 javascript jquery jquery-ui

我试图让用户删除多条记录,他们单击“删除”链接,然后出现一个对话框,显示您确定吗?单击“确定”后,它应该会被删除。

这是我第一次这样做,但对于我单击的任何其他删除按钮都不起作用。我正在设置一个隐藏字段来存储一些信息,然后在对话框中获取该信息。

我已经确定了问题,请参阅代码中的注释,但不确定为什么会出现问题。

这是删除按钮:

 $(".delete-item").click(function () {
            $(this).css('font-weight', 'bold');
            var delId = $(this).attr("id");
            $("#hidden-itemid").val(delId);
            $("#dialog-delete-sure").dialog("open");

        });

这是对话框:

    $("#dialog-delete-sure").dialog({
        autoOpen: false,
        resizable: false,
        height: 140,
        modal: true,
        buttons: {
            Ok: function () {
                var hiddenId = $("#hidden-itemid").val();//*** This comes back undefined the second time***//
                var itemId = $("#hidden-itemid").val().split('-')[1];
                var iType = $("#hidden-itemid").val().split('-')[0];

                $.post('/User/Delete/', { id: itemId, itemType: iType }, function (json) {
                    if (json.success) {
                        $("#" + iType + "-row-" + itemId).hide('slow', function () { $("#hidden-itemid").remove(); });
                        $("#dialog-success-delete").dialog("open");
                    } else {
                        if (json.error == "unknown") {
                            $("#dialog-unknown-error").dialog("open");
                        }
                        if (json.error == "unauthenticated") {
                            $("#dialog-unauthenticated").dialog("open");
                        }
                    }
                });
                $("#hidden-itemid").css('font-weight', 'normal');
                $(this).dialog("close");

            },
            Cancel: function () {
                $(this).dialog("close");
            }
        }
    });

典型的删除按钮如下所示:

<a id="event-63" class="delete-item">Delete</a>

有什么想法吗?

最佳答案

你在运行

$("#hidden-itemid").remove();

json.success 上,因此您从 DOM 中删除该元素..下次它不存在时,您会收到错误..

关于javascript - jQuery 隐藏字段未设置多次,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4836727/

相关文章:

jQuery 可拖动背景图像随鼠标震动而变化

jquery - 更改可折叠元素的默认高度

javascript - 无法仅在 Firefox 上摇动 <td> 元素

javascript - 过渡期间的火灾事件

javascript - 如何在 JavaScript 中添加数据并将其绑定(bind)到 jQuery 网格

javascript - Angular 工厂不工作

jquery - jQuery 中的递归动画不起作用

jquery - 回调函数不会等到第一个函数完成。我该如何解决/解决这个问题?

Javascript 使用 OpenLayers 从 GeoServer 编辑 WFS

javascript - 只显示一次预加载器而不显示正文内容