使用文本字段和单个提交按钮更新 Tapestry4 中的列表列表

发布于 2024-08-29 09:14:41 字数 816 浏览 4 评论 0原文

在 Tapestry 4 中,我尝试迭代列表列表(从技术上讲,是具有字符串列表作为数据字段的对象列表)。 我目前正在通过使用组件的“嵌套”来做到这一点。

(这是伪代码)

<span jwcid="Form">
<span jwcid="@For" source="ognl:Javaclass.TopLevelList" value="ognl:SecondLevelList" index="ognl:index">
<span jwcid="@For" source="ognl:SecondLevelList.List" value="ognl:ListItem" index="ListItemIndex">
<span jwcid="@TextField" value="ognl:ListItem"/>
<span jwcid="@Submit" listener="ognl:listeners.onSubmit"/>
</span></span></span>

onSubmit 侦听器然后访问索引和ListItem 索引页面属性以及ListItem 页面属性,以便正确更新Javaclass.TopLevelList 中的列表。

这工作正常,但看起来很糟糕,并且对最终用户来说很麻烦。 我更愿意仅使用页面底部的一个提交按钮以某种方式模拟此功能。

我研究了如何使用覆盖的表单组件来获取其中的“表单控制组件”列表,然后(非常小心地)解析 Tapestry 的命名约定以恢复索引的功能。

如果有人知道如何做到这一点,或者可以解释表单组件(如何/何时提交等),我们将不胜感激。

In Tapestry 4 I am trying it iterate over a list of lists (technically a list of objects who have a list of strings as a data field).
I am currently doing this by using 'nested' for components.

(This is pseudo code)

<span jwcid="Form">
<span jwcid="@For" source="ognl:Javaclass.TopLevelList" value="ognl:SecondLevelList" index="ognl:index">
<span jwcid="@For" source="ognl:SecondLevelList.List" value="ognl:ListItem" index="ListItemIndex">
<span jwcid="@TextField" value="ognl:ListItem"/>
<span jwcid="@Submit" listener="ognl:listeners.onSubmit"/>
</span></span></span>

The onSubmit listener then accesses the index and ListItem index page properties, as well as the ListItem page property in order to correctly update the list in Javaclass.TopLevelList.

This works fine, but it looks terrible, and is cumbersome to the end user.
I would prefer to somehow simulate this functionality using only one submit button at the bottom of the page.

I have looked into somehow using the overlying form component to obtain a list of the 'form control components' within it, and then (with great care) parsing through tapestry's naming conventions to recover the functionality of the indexes.

If anyone knows how to do this, or could explain the form component (how/when it submits, etc.) it would be greatly appreciated.

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。
列表为空,暂无数据
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文