【问题标题】:Primefaces run java script onComplete/onClickPrimefaces 运行 java 脚本 onComplete/onClick
【发布时间】:2013-02-05 11:26:23
【问题描述】:

我有一个 p:command 按钮,如下所示。

<p:commandButton id="settings" ajax="false" onComplete="window.alert('sometext');"      value="#{messages.settings}"
styleClass="cancelButton" style="font-family: sans-serif, Arial, Helvetica, Geneva; font-size: 10pt; width: 90px;" /></td>

我希望这个按钮在 onComplete 或 onClick 上运行 java 脚本,但我无法让它们中的任何一个工作。我实际上希望它打开一个弹出窗口,但在这里我尝试使用更简单的脚本来发出警报。但这也不起作用。什么都没有发生。

谁能帮帮我?

【问题讨论】:

    标签: javascript jsf primefaces


    【解决方案1】:

    首先:onxxx 中没有大写字母(其中 xxx 是 start / complete / success

    由于您设置了ajax="false",您的按钮将不会执行任何ajax,这意味着onstart / oncomplete / onsuccess 根本不会被触发

    使用onclick="alert('wow')"

    如果您删除ajax="false",您将能够使用oncomplete="alert('wow')"

    【讨论】:

    • ajax=false 只是我的粘贴错误。我实际上已经在我的 xhtml 页面中删除了它。因此,即使我将 oncomplete 更改为小写并删除 ajax=false 它仍然不起作用。
    • 它在h:form 里面吗?显示更多代码,onclick="alert('wow')" 怎么样?
    • 是的,我有,但是我在代码中找到了 ,我认为这不应该存在吗?当删除它似乎工作得更好时,你还没有收到警报。我正在将一些非常旧的 xhtml 迁移到 jsf2 和 primefaces,所以还有更多的东西在路上。
    • 我已经修复了我现在删除 ui:composition 时遇到的新问题。但是,我回到了开始时没有显示警报的地方。在我的 xhtml 中,我有 和 和
      表单和 body 是我的 p:commandbutton 周围的表单。我在primefaces.org/gettingStarted.html 找到了 4 个所需的 xmlns。有什么新想法可以解决吗?
    猜你喜欢
    • 1970-01-01
    • 2020-09-10
    • 1970-01-01
    • 1970-01-01
    • 2018-07-11
    • 1970-01-01
    • 2018-09-22
    • 2014-03-03
    • 2015-05-15
    相关资源
    最近更新 更多