如何使用JavaScript确认对话框菜单触发表单提交事件

How to trigger a form submit event by using JavaScript confirm dialog menu

本文关键字:表单提交 事件 菜单 对话框 何使用 JavaScript 确认      更新时间:2023-09-26

运行代码时,屏幕上会出现confirmDialog菜单。看到"你确定吗?"在confirmDialog菜单上,我按OK。但是,按下OK不会触发控制器中的操作(DoDelete)。

我的代码在下面的中。

我使用BeginForm,如下所示。

@using (Html.BeginForm("DoDelete", "Ekranlar", FormMethod.Post))
{
                        |
                        |
 <input type="submit" class="confirmDialog" value="Delete" />    
}

Html部门

<div id="dialog-confirm" style="display: none">
    <p>
        <span class="ui-icon ui-icon-alert" style="float: left; margin: 0 7px 20px 0;"></span>
        Are you sure ?
    </p>
</div>

脚本如下。

<script type="text/javascript">
    $(document).ready(function () {
        $(".confirmDialog").on("click", function (e) {
            // e.preventDefault(); use this or return false
            var url = $(this).attr('href');
            $("#dialog-confirm").dialog({
                autoOpen: false,
                resizable: false,
                height: 170,
                width: 350,
                show: { effect: 'drop', direction: "up" },
                modal: true,
                draggable: true,
                buttons: {
                    "OK": function () {
                        $(this).dialog("close");
                        window.location = url;
                    }, "Cancel": function () {
                        $(this).dialog("close");
                    }
                }
            });
            $("#dialog-confirm").dialog('open');
            return false;
        });
    });
</script>

您可以执行$(".confirmDialog").closest('form').submit();

buttons: {
                    "OK": function () {
                        $(".confirmDialog").closest('form').submit();
                        $(this).dialog("close");
                        window.location = url;
                    }, "Cancel": function () {
                        $(this).dialog("close");
                    }
                }