javascript - RichFaces 4 ExtendedDataTable - 以编程方式选择行

标签 javascript jsf richfaces

晚上好。我被要求更新在 RichFaces 中实现的 Web 应用程序。该应用程序在复合组件内有一个 rich:extendedDataTable,用于显示一些可搜索的数据。我被要求实现的更新是在提交搜索时自动选择表中的第一行。我找不到从支持 bean 执行此操作的方法,但我确实看到可以使用 JavaScript API 通过调用 selectRow 和 setActiveRow 函数来完成此操作,但问题是我需要表,如果我检查 DOM 并获取表的客户端 ID,比方说“junk:tableId”,然后我将其硬编码到函数中,

#{rich:component('junk:tableId')}.selectRow(0); 
#{rich:component('junk:tableId')}.setActiveRow(0});

事情按照我需要的方式进行。为了检索 clientId,我找到了 rich:clientId 函数,并且确认 rich:clientId('tableId') 返回的 clientId 与我从 DOM 获取的 clientId 相同,因此我更新了原始函数调用

#{rich:component('rich:clientId('tableId')')}.selectRow(0); 
#{rich:component('rich:clientId('tableId')')}.setActiveRow(0});

它不起作用,现在我不知道该尝试什么。有谁知道我可以尝试什么?

最佳答案

您可以直接使用#{rich:component('tableId')},该函数无论如何都会在内部调用clientId

#{rich:component('rich:clientId('tableId')')}

这应该会给你带来解析错误。单引号标记字符串,而不是方法参数。

关于javascript - RichFaces 4 ExtendedDataTable - 以编程方式选择行,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30657979/

相关文章:

jsf - p :commandButton action not working in p:confirmDialog

java - RichFaces 3.3 : Calling actionListener on window. 加载

javascript - 当鼠标在jsf中结束时如何突出显示扩展数据表的行?

javascript - 在 if 语句中选择正确的条件

javascript - 读取二进制文件并从中生成一个字符串

JavaScript 按字母顺序创建索引映射

java - <丰富:progressbar> Progress bar is shown only when method is finished

javascript - 摆脱在外部 JavaScript 文件中对 Web 应用程序的上下文路径进行硬编码

java - 下载文件以使用 richfaces 和 IE8

javascript - 基于分隔符javascript正则表达式分割字符串