On Row选择仅触发一次.. 我使用p:datatable显示结果,当我点击一行时,相应的onRowSelect方法正在调用..但它是第一次工作,后来事件没有被触发。
<p:dataTable id="resultsTable" var="details" paginator="true" rows="10"
value="#{memberSearchBean.memberDetails}"
emptyMessage="No Records exists for this member"
selection="#{memberSearchBean.selectedMember}" selectionMode="single"
rowKey="#{details.coverNumber}"
>
<p:ajax event="rowSelect" listener="#{memberSearchBean.onRowSelect}" update=":memberSearchForm:displayselectedMember" oncomplete="PF('displayselectedMember').show()" />
public void onRowSelect(SelectEvent event) {
MemberDetailsBean mb = (MemberDetailsBean) event.getObject();
}
任何帮助将不胜感激..我已经搜索了很多,但我没有得到正确答案..
答案 0 :(得分:2)
您的JavaScript在执行PF('displayselectedMember').show()
时遇到错误,因为您尚未定义widgetVar displayselectedMember
。您将它作为ID,PF
函数无法识别。当JavaScript遇到错误时,它会停止执行,这会阻止你的函数调用(通过AJAX)。
我建议使用Chrome中的开发者工具或Firefox中的Firebug进行调试。这些中的任何一个都会在控制台中为您输出此错误。
另请注意:PF(widgetVar)
表示法在版本3.x中似乎不起作用;它可能是4.x的新手。如果您使用的是3.x,请按以下方式调用:widgetVar.function()
。