ASP.NET MVC - 具有表单的确认按钮

时间:2012-04-16 09:15:44

标签: asp.net-mvc-3

我的模型有一个强类型视图,我想要的是当用户点击提交时,会弹出一个确认框,确认用户确实希望提交表单,如果他们点击取消那么它不应该为该视图触发HttpPost动作,这可能吗?

4 个答案:

答案 0 :(得分:26)

当然有可能。我喜欢用一种不引人注目的方法。这是一个简化的例子:

jQuery(document).ready(function () {
  jQuery('[data-confirm]').click(function (e) {
    if (!confirm(jQuery(this).attr("data-confirm")))
    {
      e.preventDefault();
    }
  });
});

然后,您只需要在提交按钮中添加数据确认属性,例如

<input type="submit" data-confirm="are u sure?" />

当然,你可以在链接,按钮等上使用这个属性。你不仅限于提交按钮,如果你想在晚些时候实现一个发明者确认对话框,你只需要在一个地方替换代码。

答案 1 :(得分:4)

你可以为它添加一个简单的jQuery调用。

在视图的末尾添加:

<script type="text/javascript">

    $("form").submit(function() {

        return confirm('Are you sure?');

    });

</script>

或添加

onsubmit="return confirm('Are you sure?');"

作为新元素属性

答案 2 :(得分:4)

        function doSubmit()
        {                                 
                if(window.confirm("ARE YOU SURE TO PERFORM THIS ACTION"))
                {                       
                    return true;
                }
                else return false;                
        }

在表单的doSubmit()事件上调用onsubmit函数, 例如 - onsubmit="return doSubmit()

答案 3 :(得分:0)

我相信这可以通过使用jquery覆盖提交按钮来完成。 Jquery .submit()

这样,当该人点击提交时,您可以显示一条消息并提交或取消。