MVC In Html.Begin表单需要两个按钮用表单的所有值调用不同的操作



Frnds我希望在一个窗体上使用两个不同的按钮将数据提交给两个不同控制器,并且我希望两个按钮都调用不同的操作,并将窗体的所有值提供给它们相关的控制器。

您可以使用JavaScript这样做:

HTML

<form method="POST" action="/">
    ... The Rest Of Your Form ...
    <input type="Submit" id="btn-1" name="btn-1" />
    <input type="Submit" id="btn-2" name="btn-2" />
</form>

JavaScript

(function(d) {
    var form = d.getElementsByTagName('form')[0],
        targetBtn;
    form.onsubmit = function(e) {
        e.preventDefault();
        targetBtn = e.explicitOriginalTarget.id;
        //Set the form action based on the id of the button that submitted it
        if(targetBtn === 'btn-1') {
            form.action = '/foo';
        } else {
            form.action = '/bar'
        }
        //Submit your form
        form.submit();
    };
}(document));

您所需要做的就是确保此代码位于HTML标记中的from之后,或者将其添加到jQuery document.ready函数中。

这是一篇很好的文章,可以帮助您实现您想要的

http://blog.ashmind.com/2010/03/15/multiple-submit-buttons-with-asp-net-mvc-final-solution/

最新更新