ASP.. NET MVC和Javascript -提交按钮提交表单,onclick @URL.动作没有开火

ASP.NET MVC and Javascript - Submit button submitting form, onclick @URL.Action not firing

本文关键字:提交 @URL onclick 开火 表单 MVC NET Javascript 按钮 ASP      更新时间:2023-09-26

我有两个提交,一个在第1页提交表单,另一个在第1页提交表单,并重定向到第2页的表单2。

<input type="submit" value="Submit and Add Expense" onclick="window.location.href='@Url.Action("Create", "Expense")';"/>

问题是,当点击第二个提交按钮时,它只会像第一个提交按钮一样提交表单。看来重定向@url。行动不是开火。想法吗?

下面的代码应该可以做到。

<input type="submit" id="btnOne" value="One"/>
<input type="button" id="btnTwo" value="One"/>
<script>
    var sample = sample || {};
    sample.url = '@Url.Action("Create", "Expense")';
</script>
//you can move it to a separate file
<script>
$(function(){
    $("#btnTwo").click(function(){
        var form = $("form");
        form.submit();
         setTimeout(function() {

            window.location.href = sample.url;
        },100);

    });
});
</script>

我最终选择了简单的方法,即为按钮分配value属性,然后检查控制器中的按钮值。

//视图
<input type="submit" value="Submit" />
<button name="button" value="SubmitAndExpense">Submit and Add Expense</button>

//控制器
[HttpPost]
public ActionResult Create(string button)
{
   if (button != "SubmitAndExpense") {...}
}