如何检测在asp.net(mvc)中单击了哪个提交按钮

Law*_*gle 5 html asp.net-mvc input submit button

我已经阅读了很多使用提交类型输入值的答案,但我的输入按钮集合需要都有相同的文本.其他人使用Javascript,我也试图避免这种情况.

<input type="submit" value="Press This" name="submitButton" />
Run Code Online (Sandbox Code Playgroud)

不起作用,因为它们都需要命名为"按此".

<button type="submit" value="12" name="submitButton">Press This</button>
Run Code Online (Sandbox Code Playgroud)

不起作用,因为它没有发布值.

有没有办法让<button>提交它的值或更改文本,<input type="submit">所以他们都在页面上说同样的值,同时具有不同的值?或者甚至可能将数值隐藏在输入元素的value属性中,然后在使用该值之前删除"Press This"?

也许使用<input type="image" value="12" />带有"按此"的图像?

编辑:尝试过<input type="image">,它不起作用.它将提交表单,但它不使用name属性来转到控制器上的正确操作.

Edit2:我还应该补充一点,提交按钮的数量是动态的,因此我不能给它们所有不同的名称,然后看看控制器中哪个参数传递给它.除非有一些方法可以为未知数量的按钮执行此操作...

Wah*_*tar 11

你的按钮应该是这样的:

<button name="button" value="12">Press This</button>
<button name="button" value="13">Press That</button>
Run Code Online (Sandbox Code Playgroud)

然后让他们参与行动

public ActionResult MyAction(string button)
{
    if (button == "12"){
        //Do this
    }

    if (button == "13"){
        //Do that
    }
}
Run Code Online (Sandbox Code Playgroud)