【问题标题】:Re-render of h:form using a4j:commandLink or a4j:commandButton does not work in IE9使用 a4j:commandLink 或 a4j:commandButton 重新渲染 h:form 在 IE9 中不起作用
【发布时间】:2012-10-25 06:06:50
【问题描述】:

我的 h:form 包含一些内容以及少量链接和按钮。在表单中使用了带有 render="@form" 的 a4j:commandLink/Button,但是当我单击此链接时,出现 XML 响应正文的 ajax 错误。此问题仅出现在 IE9 中。

它在 Firefox、chrome、IE7、IE8 中完美运行。此外,当我重新呈现表单的一部分而不是完整的表单时,它可以正常工作。

请问有人知道吗?

【问题讨论】:

  • 你有嵌套表格的机会吗?另一个表格里面的表格?您还看到 IE9 的开发工具中有任何错误吗? (F12 -> 控制台)
  • 不,我只有一个表格。开发工具也没有错误。只有在我添加以下行之后,我才能查看此错误。
  • RequestStatus 以“clientError”的形式出现。其余的一切都未定义。在 RequestStatusResponseText 中,我得到的响应 XML 似乎是正确的。
  • 仔细查看所有第三方包含的 jquery 库...可能存在一些冲突/加载顺序/多个包含/jquery 本身被多次包含/

标签: ajax jsf internet-explorer-9 render


【解决方案1】:

经过几个小时的调试,发现我在内部 XHTML 中包含了一些 jquery JS 文件,这些文件是动态包含的。那个内部 XHTML 有 commandLink/commandButton 可以重新渲染表单。 IE9 不喜欢这样。

我将 js 文件包含 script 标记移至 h:form 之外的外部 XHTML,从而解决了该问题。

【讨论】:

    猜你喜欢
    • 2011-05-15
    • 2011-04-25
    • 2011-01-20
    • 1970-01-01
    • 2013-06-02
    • 1970-01-01
    • 2012-04-09
    • 1970-01-01
    • 2011-05-07
    相关资源
    最近更新 更多