我正在使用Struts2开发应用程序。我的应用程序用于在线购物。我的任务是更新和删除购物车项目。我有一个JSP页面,它有4个文本字段。我需要将这些文本字段的数据提交给Modify操作。更新和删除提交按钮位于同一页面,同一表格中。如何确定我在JSP表单上单击的按钮是哪个?
Modify
我的表格是:
<s:form action="ModifyCart"> <s:textfield readonly="true" name="shoppingCart.item.id" label="Item Code" value="% item.id}"/> <s:textfield readonly="true" label="Item Name" value="%{item.itemName}"/> <s:textfield name="shoppingCart.qty" value="%{qty}"/> <s:textfield readonly="true" label="Available Quantity" name="shoppingCart.item.qty" value="%{item.qty}"/> <s:submit type="button" label="Update" name="submit"/> <s:submit type="button" label="Remove" name="clear"/></s:form>
重要:
我需要在Action每次提交时将所有文本字段的数据提交给班级。
Action
如何在struts2中以一种形式添加2个提交按钮
似乎您已经完成了,这type="button"意味着button type="submit"可以通过Struts标记生成a ,但是您可以使用type="submit。有关说明,请参阅文档。它们之间没有太大区别,因为它们中的任何一个都提交了表单。如果要执行不同的动作或动作类的方法,则可以在标记中使用附加属性,如action或。 method``submit
type="button"
button type="submit"
type="submit
action
method``submit
我如何确定我在jsp表单上单击了哪个按钮
这取决于您要在客户端或服务器端(或两者)上在哪里进行操作。在客户端,您可以使用javascript处理表单或按钮本身的事件。代码由不同的处理程序分开,因此在处理程序中,您完全知道触发事件的元素,或者使用对象target属性来确定该内容,如此答案所示。在服务器端,您可以使用或标记的value属性,该属性由生成并作为参数传递。请注意,并非所有HTML浏览器都可以使用button 属性。input``button``name``value
target
value
input``button``name``value