gpt4 book ai didi

javascript - JSF:一起使用 onclick + actionListener

转载 作者:塔克拉玛干 更新时间:2023-11-02 21:05:16 24 4
gpt4 key购买 nike

我正在尝试在单击按钮时执行 JavaScript,同时在后台设置属性。执行 JS 代码有效,但不会调用属性操作监听器。但是,当我删除 onclick 属性时,单击命令按钮时会在支持中设置属性。我也尝试过使用 actionListener。但同样的问题。这是我的 JSF 代码:

<rich:dataTable value="#{bean.items}" var="item">
<rich:column>
<a4j:commandButton value="Upload" onclick="Richfaces.showModalPanel('p-id');return false;">
<f:setPropertyActionListener target="#{bean.targetId}" value="#{item.id}" />
</a4j:commandButton>
</rich:column>
// more columns
</rich:dataTable>

我在这里遗漏了什么吗?

最佳答案

<a4j:commandButton>组件生成一个 HTML <input type="submit">元素以及与当前问题无关的 ajax 魔术的一堆 JS 代码。

组件的 onclick属性生成为 onclick同一个 HTML 元素的属性。 onclick属性通常指的是在 HTML DOM click 时执行的一些 JavaScript 代码。事件在特定的 HTML 元素上触发。当最终用户单击 HTML 元素时会立即触发此事件,并且发生在调用 HTML 元素的默认操作(提交父表单)之前。更重要的是,默认操作可以由 JavaScript 代码的 bool 结果控制。如果它返回 false ,则不会执行默认操作。这就是您的情况。

如果您想同时调用 onclick 中的 JavaScript 代码属性 HTML 的默认操作<input type="submit">元素,那么你必须返回 true , 或者只是删除 return false;完全一 block 。

关于javascript - JSF:一起使用 onclick + actionListener,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10106223/

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