【问题标题】:a4j:commandButton not reached the oncompletea4j:commandButton 未达到 oncomplete
【发布时间】:2013-12-27 06:19:22
【问题描述】:

我正在使用Richfaces 3.3.3Final,有时a4j:commandButton 操作未完成, 不再重新渲染页面。

示例代码:

<a4j:commandButton image="#{Icon.gotoIcon}"
                   id="gotoLinkId"                                                       
                   action="#{Home.gotoLinkAction}"
                   oncomplete="linkExpand('#{Home.id}');"
                   reRender="modalPanel,navigationMenu"/>

按钮点击动作后panelMenuGroup会自动展开,但有时页面会挂起。并且还尝试清除cookies,没有效果。

<rich:panelMenuGroup id="groupId"
                     label="About"
                     action="#{Home.homeLinkAction}"
                     expandMode="ajax"
                     reRender="navigationMenuId">

    <!-- Development -->

    <rich:panelMenuItem>
        <a4j:commandLink id="developmentMenuId"
                         value="Development"
                         action="#{Home.developmentMenuAction}"
                         reRender="mainOutputPanelId">
            <f:param id="ParamId" name="nameId" value="Development"/>
        </a4j:commandLink>
    </rich:panelMenuItem>
</rich:panelMenuGroup>

脚本:

function linkExpand(id)
   {
       var elementId = "iconNavigationId:"+id;
       document.getElementById(elementId).click();
   }

当我尝试手动展开 panelMenuGroup 时,不应再完成任何操作。我得到了以下异常,

例外:

debug[15:47:22,701]: Script evaluation succeeded
debug[15:47:22,701]: Evaluate script replaced area in document: 
error[15:47:22,717]: . Error message: Invalid argument.
debug[15:47:22,717]: call selectSingleNode for id= org.ajax4jsf.oncomplete
debug[15:47:22,732]: Call request oncomplete function after processing updates
debug[15:47:22,748]: call selectSingleNode for id= _ajax:data

【问题讨论】:

  • 你可以尝试在linkExpand JS 函数中放入一个alert(只是为了知道代码是否正在执行)?
  • @Apurv 它适用于除特定机器之外的所有 PC。它不仅发生在 IE 中,FireFox 和 Google Chrome 都无法正常工作。
  • 它更难找到,有时它工作得很好,但有时它不会工作。

标签: java javascript ajax jsf richfaces


【解决方案1】:

oncomplete 的 el-expressoins 被提前评估。改用 jsFunction。

【讨论】:

    猜你喜欢
    • 2015-03-30
    • 1970-01-01
    • 1970-01-01
    • 2013-01-23
    • 1970-01-01
    • 2011-07-27
    • 1970-01-01
    • 1970-01-01
    • 2013-05-29
    相关资源
    最近更新 更多