-1

我在 MVC3 项目中有一个 ajax 表单。我想在提交按钮上有一个 javascript 确认弹出窗口。我可以通过多种方式使弹出窗口出现,但如果用户选择取消按钮,我无法阻止提交执行。

做这个的最好方式是什么?

我试过使用下面的js ...

       function showWarning(e) {
           var answer = confirm('message');
           if (answer) {
               return true;
           }
           return false;
       }

但由于 ajax 的异步特性,如果不起作用。

我不是自己写 ajax 调用。我正在使用 ajax.begin 表单助手,就像这样......

using (Ajax.BeginForm("LinkName", "Account", null, new AjaxOptions { UpdateTargetId = "divLinkName", HttpMethod = "POST" }, new {  @id="formLinkName" }))
    {
    <div class="row">
        <div class="large-12 columns">
            <div class="editor-label">
                @Html.LabelFor(m => m.LinkName)
                @Html.TextBoxFor(m => m.LinkName)
                @Html.ValidationMessageFor(m => m.LinkName)
                <input type="submit" value="Set my Link Name" class="button radius small" />
            </div>
        </div>
    </div>
    }

有没有人有任何想法?

谢谢

4

2 回答 2

0

绑定表单的函数 onSubmit 事件。

using (Ajax.BeginForm("LinkName", "Account", null, new AjaxOptions { UpdateTargetId = "divLinkName", HttpMethod = "POST" }, new {  @id="formLinkName",onsubmit="return takeconfirmation()" }))

在javascript中添加takeconfirmation函数:

function takeconfirmation(){
return confirm('Are you sure');
}
于 2013-10-11T11:29:50.397 回答
0

这对我有用(它在 Ajax.BeginForm(new AjaxOptions()) 中):

<input type="submit" onclick="if (!confirm('Message')) return false;" />
于 2013-10-11T11:13:02.070 回答