一尘不染

MVC已按下哪个提交按钮

c#

我的MVC表单上有两个按钮:

<input name="submit" type="submit" id="submit" value="Save" />
<input name="process" type="submit" id="process" value="Process" />

从我的控制器动作中,我如何知道哪一个被按下了?


阅读 231

收藏
2020-05-19

共1个答案

一尘不染

为两个提交按钮命名相同

<input name="submit" type="submit" id="submit" value="Save" />
<input name="submit" type="submit" id="process" value="Process" />

然后在您的控制器中获取Submit的值。仅单击的按钮将传递其值。

public ActionResult Index(string submit)
{
    Response.Write(submit);
    return View();
}

您当然可以评估该值,以通过开关块执行不同的操作。

public ActionResult Index(string submit)
{
    switch (submit)
    {
        case "Save":
            // Do something
            break;
        case "Process":
            // Do something
            break;
        default:
            throw new Exception();
            break;
    }

    return View();
}
2020-05-19