RowSelect事件p:dataTable

Shi*_*wan 5 jsf primefaces

需要捕获具有基于复选框的行选择的dataTable的rowSelect事件.代码如下:

<p:ajax event="rowSelect" listener="#{articleBean.onRowSelect}"
                    oncomplete="articleBean.onSelection" />
<p:ajax event="rowUnselect" listener="#{articleBean.onRowUnselect}"
                    oncomplete="articleBean.onSelection" />
<p:column id="name" headerText="Select" selectionMode="multiple"
                    style="width:18px" />
Run Code Online (Sandbox Code Playgroud)

我无法理解这种行为.当我第一次单击复选框时,将调用方法"onRowSelect".当我取消选择时,"onRowUnselect"不会被调用.而且,"onRowSelect"方法只为网格调用一次,如果我单击任何其他复选框,则事件不会被触发.我错过了什么吗?无法理解这种行为.

dul*_*lon 16

当您使用带有基于复选框的行选择的dataTable时,您应该替换:

<p:ajax event="rowSelect"
<p:ajax event="rowUnselect"
Run Code Online (Sandbox Code Playgroud)

具有以下内容:

<p:ajax event="rowSelectCheckbox"
<p:ajax event="rowUnselectCheckbox"
Run Code Online (Sandbox Code Playgroud)

  • 好的,事件是`toggleSelect`(当切换标题复选框时.) (6认同)