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

时间:2015-06-05 03:41:23

标签: javascript jsf richfaces

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

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

事情就像我需要他们一样。为了检索clientId,我找到了rich:clientId函数,我确认了rich:clientId('tableId')返回了我从DOM获得的clientId,所以我更新了原来的函数调用

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

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

1 个答案:

答案 0 :(得分:1)

您可以使用#{rich:component('tableId')},函数内部调用clientId

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

这应该是一个解析错误。单引号标记字符串,而不是方法参数。