问题标签 [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.
jsf - JSF 循环重新渲染
希望标题不要太神秘......
我们遇到的问题是我们从一些 Java 列表中生成了一堆输入控件(等)h:inputOneMenu
。h:inputText
工作正常,除了要求这些输入动态验证。再一次不是那么难,除了因为在循环中生成了控件,唯一可能的 reRender 操作基本上是整个表单或a4j:outputPanel
围绕每个循环迭代,这基本上是同一件事。
现在上述两种解决方案在技术上是可行的,但它们具有重新渲染所有页面控件的令人讨厌的副作用,这使得页面感觉非常抽搐和笨拙。我们希望阻止这种情况的发生,理想情况下,唯一重新渲染的控件是发送 ajax 更新/验证的控件。
基本上这是我们的页面代码:
我遗漏了一些仅根据项目呈现不同控件的内容。
如您所见,我们当前正在使用该a4j:outputPanel
解决方案,因此每次更新任何循环生成的控件时,都会重新渲染所有控件。
如果有人有任何想法,请提前感谢。
jsf - 如何使用在或者选择多个项目?
我有一个带有<h:dataTable>
. 每行都有一个<h:selectBooleanCheckbox>
. 如果选中复选框,则应在 bean 中设置相应行后面的对象。
- 我该怎么做呢?
- 如何在支持 bean 中获取选定的行或其数据?
- 或者这样做会更好
<h:selectManyCheckbox>
吗?
ajax - 如何重新渲染使用
我已经实现了一个由中继器创建的列表:
和一个过滤我的列表的按钮:
那么,是否有一种简单的方法可以在单击命令链接(使用 AJAX)后仅呈现我的中继器 :-)
我试过以下:
但这没有用..
更新
也不起作用...也许我必须将操作方法(overviewController.filterNew)放入 ajax 标记中?
更新 2
也不行!
也许不可能重新渲染转发器?是否还有其他元素,例如 div 标签或可以重新渲染的东西???
...
感谢您的帮助
jsf - 如何收集列表的提交值在 JSF 中?
我有一个豆子List<T>
:
我想编辑value
每个项目的属性:
使用此代码,value
不包含所有提交的值,仅包含最新提交的值。我也试过<c:forEach>
and <h:dataTable>
,但没有任何区别。
我应该怎么做才能收集所有提交的值?
jsf - 如何使用 ui:repeat + h:inputText + managed bean 在 JSF 中保存数组?
在 postgres 数据库中,我有一个表,其中包含一个 int[] 字段。
在我的模型中,我有一个映射表的持久 bean,包括 int[] 字段。在这个类中,我已经实现了所有需要的 setter/getter。
现在,我有一个托管 bean,它也扮演控制器角色,并链接到模型 bean。因此,在我的 xhtml 中,我正在尝试这样做:
baseSetList
是 int[] 数组。
问题是当我提交表单时,只有这个元素没有更新。初始化工作,getter被调用,但不是save,所以它必须是一个绑定的东西。长话短说,我试图用自定义类的 ArrayList 替换 int[] 数组,该类可以包装 int(如可写整数),但它不起作用。
也许是没有正确绑定的重复,我真的不知道。这是我在多年 PHP 之后的第一个 Java 项目 :)。
java - 表头取自与 ui:repeat 一起使用的列表项
假设我有以下课程书
我检索了 Book ( List<Book>
) 的列表,我想将它显示在像这样的表中
我正在考虑创建一个 hashmap 映射作者 => 书籍列表,但是,正如我在 SO 中所读到的,h:datatable 和 ui:repeat 都不支持 hashmap。
关于如何实现这一目标的任何提示?
谢谢你。
PS:我使用的是 jsf 1.2
随意建议一个更好的标题
java - 不同的 div 标签 ID
我正在尝试根据支持 bean 的“deviceSel”中包含的项目数动态生成 div 标签。对于每个 div 标签,我通过调用 JS 文件中存在的“generateSparkLine”函数来填充它 - “Reports_Cap”。我需要传递 iv 标签的 id 以便函数在相应的“div”标签中填充数据。
在我当前的代码中,div 是使用相同的 id 创建的,因此,相同的部分会在点击时填充。有人可以帮助我从 JSF 文件中为 div 标签动态分配 id 吗?此外,div 标签不允许我使用“onload”事件,这就是我使用“onclick”的原因。我该如何修改它,以便在页面打开时填充 div 标签?
java - 如何在 jsf 中显示 hashmap 值?
我有bean“MyBean”,它具有属性HashMap - “map”,其值类型是MyClass。我想使用 ui:repeat 在 jsf 中显示地图的一些属性。但是这些代码:
但是这段代码没有显示任何东西。虽然当我尝试以这种方式在 jsp 中显示 hashmap 值时,它是成功的。我哪里错了?以及如何解决这个问题?
jsf - 如何从 ui:repeat 以 html 形式获取值
我已经解决了我之前发布的问题:
现在我想知道如何获取表单中修改的值并传递给我的 bean。
这就是我的做法:
形式:
在豆子里:
私有列表 iniciosMesList = null;
CeldaGrid 是一个带有 getter/setter 的类
我希望获取表单中每个 inputText 的值,然后重新创建列表以传递给我的数据库。
我怎样才能访问这个值???
谢谢
ajax - h:inputText inside ui:repeater 在 ajax 更新后显示错误的值
我有一个带有 ui:repeater 标记的 JSF 页面,它只显示字符串列表和一些用于将字符串添加到列表的控件。添加字符串时,我使用 ajax 更新转发器标记并立即显示新字符串,而无需刷新页面。这是我的页面的样子:
除了 inputText 组件外,一切正常。使用 Ajax 更新 ui-repeater 后,仍会显示上一个字符串中的文本。例如,假设最初我有一个包含 2 个字符串“val1”和“val2”的列表。我输入一个名为“val3”的新字符串并提交表单。列表在服务器端正确更新,中继器也更新了,它现在有 3 个元素。但是,虽然新添加的元素中的 h:outputText 将正确显示“val3”,但 inputText 将显示为“val2”作为值。所以我最终得到了这样的东西:
支持 bean 非常简单:一个视图范围的模型 bean
和一个请求范围的控制器 bean:
我做了一些测试,这实际上对任何输入组件都以相同的方式工作,例如 textInput、textArea 等。任何帮助将不胜感激。