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

标签 javascript jquery asp.net-mvc jquery-ui

当我运行代码时,屏幕上会出现一个确认对话框菜单。 看到“你确定吗?”后' 在确认对话框菜单上,我按“确定”。 但是,按 OK 不会触发 Controller 中的操作 (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");
                    }
                }

关于javascript - 如何使用 JavaScript 确认对话框菜单触发表单提交事件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26142626/

相关文章:

asp.net - Windows 更新 "The type or namespace name ' Html' 在命名空间 'System.Web.Mvc' 中不存在”

jquery - 如何使用 formvalidator.net 的日期验证器设置最低年龄?

javascript - 如何通过 Jquery 访问正确的标签

javascript - Html 页内隐藏文本在单击链接之前不会显示

javascript - Jquery .load() 仅适用于前 6 个元素,带有数据值

javascript - 使用 Javascript 在 Div 中编辑和删除选项

c# - 将 .NET MVC 项目更改为指向新 IIS 站点的问题

c# - 序列化类型对象时检测到循环引用

javascript - 在 Windows 中测试/调试 Phonegap iOS 应用程序

javascript - React - 为什么输入字段仍然是只读的(即不可编辑),即使我已经添加了 onChange?