更新 struts2 中文本字段中的值列表
我在 Struts2 中遇到一个问题,在我的示例应用程序中,我有对象数组(比如人名),我需要将这些名称显示为可编辑文本字段,我为此使用迭代器,我成功地进行了映射,但是当我更改相同的值并提交表格。我得到了包含空值的整个数组。
例如,在我的表单 bean 中,我有一个属性 姓名 [] 姓名;
在我的 JSP 中,我有一个迭代器,
如果有 3 个名称,那么如果我可以使用一些虚拟值初始化它们,那么我可以在 UI 上获取这些名称,但是当我编辑和提交时,“名称”数组不会更新。请在这方面帮助我
I am facing a problem in Struts2, In my sample application I have Array of objects (Say person name) , I need to display these names as a editable text fields , I am using Iterators for this , I am successful in diaplying, But When I cange the same value and submit the form. I am getting the entire array which holds null value.
Say for Exaple in my form bean I have a property
Name [] names;
In my JSP I have the iterator as
If there are 3 names then I can get these names on the UI if I can initialized them with some dummy value but when I edit and sumbit, then "names" array is not getting updated. Please help me in this regard
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(2)
在 Struts2 中,当您需要重新填充 bean 项列表时,您需要通过索引来引用它们。请参考下面的示例:
Bean 类:
Action 类:
Page:
当您提交上述表单时,URL 将类似于
doUpdate?persons[0].name=A1&persons[1].name=B1&persons [2].name=C1
.同样,如果您需要更新第一个人对象的 id,您将使用表单将persons[0].id=3
附加到 url。在
中,您告诉预定义的value 是每个对象的人名。name
属性是设置渲染的html输入元素;提交表单时将在 url 中引用的名称。如果你查看生成的 html,你就会有一个清晰的想法。In Struts2, when you need to repopulate the list of bean items, you need to refer them through indices. Please refer the example below:
Bean class:
Action class:
Page:
When you submit the above form, the url would look like
doUpdate?persons[0].name=A1&persons[1].name=B1&persons[2].name=C1
. Similarly if you need to update id of the first person object, you will appendpersons[0].id=3
to the url using form. In the<s:textfield value="%{#person.name}" name="persons[%{#stat.count}].name"/>
, you tell that the predefined value is person's name, for each object. Thename
attribute is to set the rendered html input element; the name which will be referenced in the url when the form is submitted. You will get a clear idea if you look into the generated html.使用struts2的iterator标签,如果list不为空则使用:
Use the iterator tag of struts2, if list is not empty then use :