我有一个带有数据滚动器的富人脸数据表。我想要在数据滚动按钮上绑定一个"点击"事件。此操作的目的是通过数据滚动程序根据 javascript 中定义的一些条件在每个页面更改操作上为行着色。
下面是我的 JQuery 函数:
$(document).ready(function() {
$('#paketler a').live('click', function() {
stopajRenklendir();
});
});
我的数据表简化了:
<rich:dataTable rendered="#{not empty sigortaFaturaPaketiSorgulamaBean.paketProvizyonListModel}" rows="2"
value="#{sigortaFaturaPaketiSorgulamaBean.paketProvizyonListModel}" var="item" border="1" cellspacing="3"
styleClass="teminatTablosu" headerClass="teminatTablosuHeader" footerClass="teminatTablosuFooter" rowKeyVar="idx"
id="paketler">
<f:facet name="footer">
<h:outputText
value="Paket Sayısı: #{sigortaFaturaPaketiSorgulamaBean.paketProvizyonListModel.rowCount == -1 ? 0 : sigortaFaturaPaketiSorgulamaBean.paketProvizyonListModel.rowCount }"
style="float:left" />
<h:panelGroup styleClass="pagingWrapper">
<rich:dataScroller fastStep="2" page="#{sigortaFaturaPaketiSorgulamaBean.page}" maxPages="2" id="paging" />
</h:panelGroup>
</f:facet>
</rich:dataTable>
脚本按预期工作,为我想要的行着色,但在着色后,表格再次呈现,这使得该过程无用。
您可以使用 rich:dataScroller 的 "oncomplete" :
<rich:dataScroller oncomplete="stopajRenklendir();" ... />
如果你想调用一个动作或渲染另一个组件,你可以在 rich:dataScroller 的 oncomplete 中使用 a4j:jsFunction :
<rich:dataScroller oncomplete="myJavascript()" ... />
<a4j:jsFunction name="myJavascript" render="paketler" action="#{sigortaFaturaPaketiSorgulamaBean.myAction}" ... />