您正在使用带有JSTL和EL的Struts2,而不是Struts标签和OGNL …是否有特定的原因迫使您放弃大多数框架机制?
也就是说,您的输入无效(未指定类型),HTML中的“这是一个新的”句子似乎表明愿意插入新行,而不是编辑现有条目。您的描述和代码似乎在询问两种不同的事物:插入一个新的事物,只需调用该动作(或另一个动作)的另一种方法,称为“添加”,而不是“编辑”,发送一个元素并将其添加到集合中。无需在这里使用AJAX
…
如果相反,问题实际上是:
如何编辑字段并提交表单以更新它们?
这是这样的:
<s:form method="POST" action="edit"> <table border="4"> <tbody> <s:iterator value="basket.items" var="item" status="ctr"> <tr> <td> <s:textfield name="item[%{#ctr.index}].id" /> </td> <td> <s:textfield name="item[%{#ctr.index}].product.price" /> </td> </tr> </s:iterator> </tbody> </table> <s:submit value="Edit"/></form>


