Html 按下了哪个按钮?

Html 按下了哪个按钮?,html,forms,jstl,Html,Forms,Jstl,我知道以前可能有人问过这个问题,但就我的情况而言,我似乎找不到一个合理的答案 我有一个表单,其中有多个按钮,提交,我需要知道哪个按钮被按下 表单内部的一个小代码段可能如下所示: <input type="submit" name="action" value="<fmt:message key="ID001"/>"/> <!-- Save --> <input type="submit" name="action" value="<fmt:me

我知道以前可能有人问过这个问题,但就我的情况而言,我似乎找不到一个合理的答案

我有一个表单,其中有多个按钮,提交,我需要知道哪个按钮被按下

表单内部的一个小代码段可能如下所示:

<input type="submit" name="action" value="<fmt:message key="ID001"/>"/> <!-- Save -->  
<input type="submit" name="action" value="<fmt:message key="ID002"/>"/> <!-- Delete --> 
<input type="submit" name="action" value="<fmt:message key="ID003"/>"/> <!-- some other action -->

fmt:message部分只考虑客户机的语言,并将单词放在按钮上

直到现在,我还在提交按钮上添加一个操作处理程序,并在表单上添加一个隐藏的输入元素,告诉我按下了哪个,但我需要在不依赖javascript的情况下支持该站点

由于按钮的值是可变的,我如何处理这个问题?(基本上我可以这样做,如果输入有一个位置可以说value=”“和text=”“,但它没有)

我考虑将我想要的“值”(如“save”和“delete”)移动到name属性,并通过执行以下操作来检查是否设置了该值:

<c:if test="${!empty param.save}">
.
.
.
</c:if>

.
.
.
然而,当我有一个x大小的列表,每个都可以删除时,问题就出现了。 我给你举个例子来说明我的意思:

表单jsp:

<input type="submit" name="delete_row|1" value="<fmt:message key="ID001"/>"/> <!-- delete first row-->  
<input type="submit" name="delete_row|2" value="<fmt:message key="ID002"/>"/> <!-- deleted second row --> 
<input type="submit" name="delete_row|3" value="<fmt:message key="ID003"/>"/> <!-- delete third row -->
...

...
服务器端jsp:

<c:if test="${!empty param.delete_row|x}"> 
.
. <%-- handle the specific row deletion here--%>
.
</c:if>

.
. 
.
^-我不知道x会是什么。。。它可以是1、100甚至更多,所以我需要一种方法来找到任何以delete_row开头的参数,并以某种方式对其进行分隔


我仔细研究了一下,发现了
元素,但是在某些版本的IE中不支持它(IE使用
按钮而不是
输入

<button name='submit' type='submit' value='1'><fmt:message key="ID001"/></button>
<button name='submit' type='submit' value='2'><fmt:message key="ID002"/></button>
<button name='submit' type='submit' value='3'><fmt:message key="ID003"/></button>


如果你想点击可点击按钮,但不提交表单,请在其中添加
type='button'

据我所知,如果我错了,希望有人能纠正我,HTML规范没有提供你在使用时需要的内容。顺便说一句,这会建议你查看HTML4规范

因此,要么不支持旧浏览器,要么使用Java脚本。
在这两种情况下,你都需要和你的老板谈谈。

谢谢你的快速回复Justinas。我担心的是,旧版本的IE不支持这个元素,这就是为什么我问这个问题是为了找到另一种解决方法。我可能最终不得不和我的老板谈谈这个问题,但据我所知,很多人仍然使用非常旧的IE因此,IE版本和我必须支持它。