需要捕获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" />
我无法理解这种行为。当我第一次单击复选框时,“onRowSelect”方法被调用。当我取消选择时,“onRowUnselect”未被调用。而且,“onRowSelect”方法仅对网格调用一次,即,如果我单击任何其他复选框,事件不会触发。我错过了什么吗?无法理解这种行为。
p:ajax
中没有看到任何更新命令。因此,只有当前元素将被更新。如果可能的话,您可以尝试设置update="@form"
。 - Matt Handy