gpt4 book ai didi

javascript - 如何通过jquery或javascript生成panelgrid的点击事件?

转载 作者:行者123 更新时间:2023-11-29 16:17:04 26 4
gpt4 key购买 nike

我正在使用 JSF 2.0 和 primefaces 3.0。我有一个 rowtoggler 和 rowexpansion。因为我使用的是旧版本的 primefaces,所以我没有 rowToggle 事件。而且我需要在行扩展时通过ajax在服务器端调用一个方法。所以我在 rowtoggler 周围放置了 div 标签并调用了一个 javascript 函数。现在我想通过 rowexpansion 内的 panelgrid 的单击事件启动 ajax 调用。如果发生这种情况,那么它看起来像 3.4 rowToggle 事件。

最佳答案

您可以使用 jQuery 的事件绑定(bind)在单击行切换器时执行 Javascript。

<h:form id="form">
<p:dataTable id="dt" value="[1,2]">
<p:column>
<p:rowToggler />
</p:column>
</p:dataTable>
<p:remoteCommand name="remotecommand"
oncomplete="alert('remote command fired')" />
</h:form>
<script type="text/javascript">
$("[id='form:dt'] .ui-row-toggler").on("click", function() { remotecommand(); });
</script>

Javascript 说明:

$("[id='form:dt'] .ui-row-toggler") 通过 id (form:dt) 选择数据表,然后选择具有样式类 ui-row-toggler 的所有后代。

.on("click", function() { remotecommand(); }) 将匿名函数绑定(bind)到点击事件,该事件触发由 p:remoteCommand< 声明的 Javascript 函数.

您可以使用 p:remoteCommand 通过它的 actionactionListener 来执行 bean 方法。 ;-)

请注意,我认为这不是一个长期的解决方案。升级到 PrimeFaces 3.4 将是更好的解决方案。

关于javascript - 如何通过jquery或javascript生成panelgrid的点击事件?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13840410/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com