素数单选数据表分页 + 行索引变量
primefaces single selection datatable pagination + rowIndexVar
我有一个数据表,其中包含包含图像的列。
<p:dataTable id="tabexam"
lazy="true"
paginatorPosition="bottom"
var="exam"
value="#{dyna.lazyModel}"
widgetVar="examTable"
emptyMessage="No results"
paginator="true"
rows="#{dyna.rows}"
selection="#{dyna.selectedExamen}"
rowKey="#{exam.studyUid}"
selectionMode="single"
rowIndexVar="rowx"
resizableColumns="false"
draggableColumns="true"
paginatorTemplate="{CurrentPageReport} {FirstPageLink} {PreviousPageLink} {PageLinks} {NextPageLink} {LastPageLink}" >
在简单文本列上,当您选择一行时,它会被正确选中并突出显示。
问题出在包含 p:graphicimage 的列上:
<p:column headerText="#{column.userListname}"
sortBy="#{column.dbname}"
filterBy="#{column.dbname}"
filterMatchMode="exact"
style="#{column.visible==true? 'text-align:center!important;vertical-align: middle!important;':'display:none!important;'}"
width="#{column.visible==true? 16:0}"
resizable="#{column.visible==true? column.resizable:false}"
rendered="#{column.dbname == 'studyPatientState'}">
<p:graphicImage value="/images/study_State_icons/#{exam.studyPatientState}.png" styleClass="imagero"
onclick="examTable.unselectAllRows();
examTable.selectRow(#{rowx});"/>
</p:column>
如您所见,为了在图形图像单击上突出显示行,我不得不添加以下js:
onclick="examTable.unselectAllRows();examTable.selectRow(#{rowx});"
问题是当我切换到另一个页面时,这些 js 函数停止工作。
我注意到,为了使其正常工作,我需要为每个页面重置 rowIndexVar,但是如何实现这样的事情。
我在这里做错了什么?
这里还有一个使用 JQuery 的替代方案,试试这个。
onclick="clickParent(this)"
<script type="text/javascript">
function clickParent(imgElement){
var tdElement = $(imgElement).parents("td");
$(tdElement).click()
}
</script>
上述方法会将 Image 元素发送到 fuinction,该函数将搜索父级,直到它到达 TD 元素并在td
上调用 click
事件。
相关文章:
- 在索引.html和应用.js [node.js] 之间共享变量
- 传递给 PHP 表单时 JavaScript 动态变量上的未定义索引
- 如何在循环期间访问 jquery getJson 调用 ($.getJson) 中的索引变量
- 如何将索引分配给 FOR 循环中的变量名称
- 循环索引变量的节点 JS 丢失
- React:使用索引变量更新嵌套集合
- 如何在javascript中使用int变量来访问索引处的数组
- 尝试使用AJAX将JavaScript变量传递给PHP,但得到'未定义的索引'
- 如何在Javascript中使用变量作为索引从JSON数组中获取特定值
- Javascript i(index,iterator):如果用作变量,它将始终被解释为索引位置
- 将用户输入分配给索引中带有变量的对象
- Javascript 索引变量
- 通过从不同的控制器$scopes将索引推送到不同的变量中
- 未定义索引:通过AJAX传递的PHP变量
- JavaScript 数组操作,使任何索引作为变量来获取值
- 将谷歌索引内容声明在一个内联的javascript变量中
- 变量作为 Javascript/Angular 中的索引
- 以编程方式声明基于索引数组的变量(使用谷歌网站列表页面)
- 如何在过滤器和选择器中设置索引变量
- 素数单选数据表分页 + 行索引变量