带有许多输入的ASP.NET MVC Ajax.Begin表单(type = submit)

时间:2010-06-05 16:14:43

标签: asp.net-mvc asp.net-ajax

我有一个Ajax表单:

<%using (Ajax.BeginForm(...)){%>
                    ...
   <input id="btn1" type="submit" value="OK1"/>
   <input id="btn2" type="submit" value="OK2"/>
<%} %>

两个输入都执行不同的工作 - 是否可以捕获已单击的输入?

3 个答案:

答案 0 :(得分:1)

为输入按钮指定不同的名称:

<input id="btn1" type="submit" name="action1" value="OK1"/>
<input id="btn2" type="submit" name="action2" value="OK2"/>

然后在控制器操作中检查是否通过查看请求参数点击action1(将发送单击按钮的名称):

public ActionResult Index()
{
    if (!string.IsNullOrEmpty(Request["action1"]))
    {
        // action1 was clicked
    }
    // ...
    return View();
}

答案 1 :(得分:0)

你可以这样做......

<input id="btnSubmit" name="pFormAction" type="submit" value="Submit" class="ym-button" />&nbsp;
<input id="btnSave" name="pFormAction" type="submit" value="Save" class="ym-button" />&nbsp;
<input type="reset" value="Clear" class="ym-button" />

然后在你的回购中:

[HttpPost]
public ViewResult Create(string pFormAction, V2WorksheetModel pWorksheet) { }

而不是必须使用不同的名称而不是利用模型绑定。

答案 2 :(得分:0)

我建议您有两个按钮,然后根据点击的按钮,您可以在表单上设置操作: 我在这里使用jQuery来做这件事,但我认为你可以得到这个想法

AND ANOTHER DESCENDANT

});