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

Cal*_*ass 11 asp.net-mvc-3

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

Har*_*ari 26

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

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

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

<input type="submit" data-confirm="are u sure?" />
Run Code Online (Sandbox Code Playgroud)

当然,您可以在链接,按钮等上使用此属性.您不仅限于提交按钮,如果您希望稍后实现一个发烧友确认对话框,则只需在一个地方替换代码.


bal*_*dre 5

您可以为此添加一个简单的 jQuery 调用。

在您的视图末尾添加:

<script type="text/javascript">

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

        return confirm('Are you sure?');

    });

</script>
Run Code Online (Sandbox Code Playgroud)

或者,添加一个

onsubmit="return confirm('Are you sure?');"
Run Code Online (Sandbox Code Playgroud)

作为新的元素属性


Rav*_*ain 5

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

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