我正在使用struts 2我有对象的arraylist,我使用<S:iterator>
来显示jsp中的信息并且它工作正常,但我修改了对象的一个属性并发送到动作和属性已被修改有值,但所有其他元素都是null,它是jsp的代码:
<s:iterator id="lisbusquedadetalle" status="itstatus">
<s:property value="#itstatus.count"/>)<br/>
<s:property value="%{lisbusquedadetalle[#itstatus.index].articulo.descripcion1}"/><br/>
<s:textfield key="lisbusquedadetalle[%{#itstatus.index}].cantidadordena" size="7px"/>> </s:iterator>
动作“cantidadordena”中的具有已在jsp中设置的值,但“articulo.descripcion1”在操作中为空,但在JSP中显示该信息。
谢谢,问候。
答案 0 :(得分:2)
如果您希望descripcion1的值回发给操作,那么您必须将其作为字段放在表单中,以便表单发布。如果您不希望用户对其进行编辑,您可以将其放在禁用的文本字段中,或者放在隐藏字段中(以及您当前正在进行的屏幕上。
Struts2(或大多数其他框架,就此而言)不会在请求之间保存值堆栈的内容。每个请求都会根据发布的参数以及操作公开的内容获得自己的新值堆栈。