问题标签 [uirepeat]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
1991 浏览

jsf - ui:repeat 中 selectManyCheckbox 的集合知道它属于中继器的哪个元素

我正在使用 JSF 2 开发一个 Web 应用程序。我的 Web 应用程序除其他外包含一系列问题,一次提出一个问题(因此一次可以看到一个问题)并且有多个答案(我使用 h:selectManyCheckbox)。

我将问题和可能的答案存储在 ArrayList(“gridQuestionListClone”)中,用户的答案(在最后检查它们之前)存储在 HashMap(“allQuestionUserAnswerMap”)中。(如果答案需要,我可以更改存储方式)。

当用户回答完所有问题后,我希望用户可以重新检查页面中的所有问题和答案(我希望预先加载答案)。因此,所有问题及其对应的复选框(每个问题 3 个),用户在一页中选中了复选框。

所以我使用 ui:repeat 来检查所有问题和可能的答案,我需要一种机制来检查正确的复选框(用户检查过的)并让用户可以更改他/她的答案以及当我按下提交按钮时(例如)知道哪些复选框对应于哪些问题。让事情更清晰的草图:))(也许)。因此,当用户回答完我要向他展示的所有单个问题时:

用户检查他/她的答案并在需要时对其进行修改,然后按下提交按钮。然后我想收集某种(或多个我并不关心,之后我可以合并它们)的集合,其中包含问题的数量和可能的答案,例如在乞讨时的“allQuestionUserAnswerMap”或类似的东西.

我的琐碎代码(不正确):

有任何想法吗?

0 投票
1 回答
1017 浏览

jsf-2 - 命令链接在 ui:repeat 中不起作用

我的 xhtml 页面中有一个<p:commandLink>内部 a <ui:repeat>,我的 bean 范围设置为“查看”。我正在使用带有 primefaces 3.4 的 JSF2.0。这是代码片段。

但命令链接不调用后端方法。我已经用 actionListener 而不是 action 尝试过,但这也不起作用。任何帮助或建议将不胜感激。谢谢

0 投票
1 回答
1942 浏览

validation - 在 ui:repeat 中使用带有变量属性的验证器

我正在使用com.sun.faces版本2.1.18。在我的应用程序中,我有一个动态的问题列表。我<ui:repeat>用来呈现每个问题。根据问题的类型,我呈现一种输入组件和验证。如果是数字范围问题,我<h:inputText>使用<f:validateLongRange>.

我遇到的问题是minimummaximum上的属性<f:validateLongRange>总是设置为第一个问题的最小值和最大值。因此,当您在任何其他问题上使用验证器时,第一个问题就会失败。这应该发生吗?有没有办法对动态生成的组件进行验证?我希望它可以在不切换到<c:forEach>.

代码片段:

我已经输出了#{question.minimumValue}and #{question.maximumValue},它们对我的问题有正确的值。

0 投票
1 回答
39697 浏览

jsf - 如何使用迭代嵌套列表?

使用 JSF 2.0,我需要显示一个表格,其中每一行都包含一个打开弹出窗口的链接。我有两个模型:A哪个具有idList<B>属性,B哪个具有idname属性。在我的 backing bean 中,我有一个List<A>属性。在我看来,我<ui:repeat>用来迭代List<A>.

要求是,根据用户点击的行,需要显示对应List<B>的。A但是,<ui:repeat>不接受要在var属性中分配的嵌套列表。因此,我需要做很多没有效率的变通办法。

我如何有效地解决这个问题?

0 投票
2 回答
6136 浏览

jsf - 如何动态地将 id(s) 添加到 primefaces 组件?

我有一个要求,我需要在表单上显示将从数据库中检索的组件。我能够在数据表和 ui 重复的帮助下显示组件。我还需要为这些组件包含工具提示功能,每个组件都需要一个 ID。有什么方法可以动态地将 id(s) 添加到组件中。

任何帮助,将不胜感激。

0 投票
1 回答
1135 浏览

jsf-2 - 在丰富的上下文菜单中动态生成丰富的菜单项

我正在尝试在丰富的上下文菜单组件中动态生成丰富的菜单项。这是我的代码:

我正在使用这个标签库:

我的问题是没有生成菜单项。我也尝试用 ui:repeat 替换c : forEach ,但它仍然无法正常工作。


我尝试了一些实验来消除一些因素。我删除了丰富的上下文菜单并使用了 ui:repeat

上面的代码片段有效。我猜上下文菜单的渲染和ui重复存在冲突。

可悲的是,我真的有点需要将 group.children 放在一个丰富的上下文菜单组件中。你能建议任何方法来帮助我实现我想要的吗?


注意:我使用的是 servlet 3.0 版

0 投票
1 回答
876 浏览

ajax - ui:repeat 对每个 ajax 调用求值的表达式

我有 test.xhtml:

我读到了重复调用方法的问题,并努力保持GET方法的业务逻辑并尝试实现LAZY加载。

请求范围 bean 中的方法 getFilteredProducts() 在各种请求中调用,即使我不更新表单 id="formProduct"。由“p:ajax”或“p:remoteCommand”调用的请求,带有和不带有“update” anithig。

我的问题 - 我不明白为什么每次(每次 ajax 调用)都调用方法“getFilteredProducts”,但在加载页面时只调用一次“filteredProductsCount”。

更新:一些想法。

可能是当我在其他请求中使用“#{product}”时,实际上我使用的是“#{filtersControllerRequestScoped.getFilteredProducts(1).get(INDEX)}”,而不是简单的对象“#{product}”?

更新:部分<util:product-item-preview_2/>

...

setProductQuickOrderPanelRemoteCommand并且updateQuickOrderPanelRemoteCommand是primefaces远程命令。

0 投票
0 回答
1295 浏览

ajax - f:ajax on h:selectManyCheckbox 在 ui:repeat: 找不到组件内不起作用

我有以下问题:我正在使用 a h:selectManyChecboxinside a ui:repeat。值更改侦听器附加到组件,以及f:ajax. 我希望在每次选择/取消选择时触发事件,然后操作支持 bean 中的一些值并相应地更新视图。我将其简化为以下示例:

JSF 页面

支持豆

对于此设置,我收到以下错误:

所以看起来,渲染目标在这里不是问题。相反,ajax 执行的隐式@this 似乎失败了。换句话说:组件找不到自己。奇怪的是,这只适用于 selectManyCheckbox。单个复选框很好。我假设这是因为 selectMany 类型充当“内循环”,所以我们在这里有两个嵌套循环。这听起来对我在这个问题中提出的问题很熟悉,只是渲染目标导致了问题。

所以我的问题是:这是预期的行为吗?或者它是实现中的一些已知错误?我问是因为 selectManyListBox 和 selectManyMenu 工作得很好......无论如何我正在寻找一种解决这个问题的方法。还有其他人有类似的问题吗?

注意:不幸的是,c:foreach 不是选项,否则我会尝试;)摆弄执行参数没有效果(例如,execute=@form)。

编辑:这在使用p:ajaxPrimefaces 时有效。无论如何,如果有其他有用的答案,我会保持开放一段时间。如果有人知道 p:ajax 的不同之处,这也很有趣。

0 投票
2 回答
5594 浏览

primefaces - ui:repeat 和 c:foreach 不返回同一个组织

我有一个包含属性列表的循环,我想在 2 列上显示此列表,但我不能。它们以无序显示,如果我使用 c: For Each place of ui: repeat 问题已解决

我能解决这个问题吗.helpe 请:)

0 投票
1 回答
419 浏览

ajax - 当页面嵌套了 ui:repeat [JSF1.2] 时,ajax 调用不会重新渲染

我有一个页面有 2ui:repeat来迭代一个复杂的集合。我需要添加commandlinks它将更新页面上的一些数据而不刷新整个页面。代码如下:

我可以看到该increaseNumber()方法被调用并且数字被更新,但是 panel1 没有重新渲染。如果我删除一个ui:repeat标签,然后它将起作用。我在网上做了研究,似乎嵌套有问题ui:repeat,但我找不到任何解决方案。