1

我有一个非常复杂的表格网站,我想在其中浏览页面(例如一次 5 行)。这种浏览在 Firefox 中运行良好,但在 Internet Explorer (7 + 8) 中则不行。

我调查了 HTTP 流量,发现服务器生成的响应是正确的,但在 IE 中,内容没有更新(也没有错误消息,例如在控制台中)。我花了一整天时间创建一个沙盒示例,但不幸的是,所有较小的示例都可以完美运行。我现在考虑两件事:

  • 我的响应太大,IE7/IE8 JS 引擎无法处理。
  • 响应包含一些 IE7/IE8 JS 引擎或 Mojarra 无法消化的序列。

您知道 Mojarra / IE JS 中的任何此类错误吗?我正在使用 Mojarra 2.1.3。

浏览由 ajax 命令链接触发:

<h:commandLink value="&gt;" actionListener="#{cc.attrs.tblModel.nextPage}">
  <f:ajax execute=":#{cc.attrs.tblId}" render=":#{cc.attrs.tblId}" />
</h:commandLink>

因为我认为问题可能是确切的响应,所以这是一个原始响应(去掉了仍然不起作用的最小值):

<partial-response>
<changes>
    <update id="tableForm:resultsPanel:tableComponent"><![CDATA[<div id="tableForm:resultsPanel:tableComponent">
    <span class="table-total">Total Elemente 
        <strong>58</strong>
    </span> 
    <span class="table-pro-seite">Anzahl Elemente pro Seite Anzeigen: 
          
        <span class="selected">5</span> 
         |  
        <a id="tableForm:resultsPanel:j_idt555:j_idt244" href="#" onclick="mojarra.ab(this,event,'action','tableForm:resultsPanel:tableComponent','tableForm:resultsPanel:tableComponent');return false">10</a> 
         |  
        <a id="tableForm:resultsPanel:j_idt555:j_idt250" href="#" onclick="mojarra.ab(this,event,'action','tableForm:resultsPanel:tableComponent','tableForm:resultsPanel:tableComponent');return false">20</a> 

    </span>
    <div class="table-content">


    </div><div id="tableForm:resultsPanel:tableFooter:table-footer" class="table-footer">
<div id="tableFooter">
    <div class="table-paging"><a id="tableForm:resultsPanel:tableFooter:firstLink" href="#" onclick="mojarra.ab(this,event,'action','tableForm:resultsPanel:tableComponent','tableForm:resultsPanel:tableComponent');return false" class="table-paging-firstLink">&lt;&lt;</a><a id="tableForm:resultsPanel:tableFooter:previousLink" href="#" onclick="mojarra.ab(this,event,'action','tableForm:resultsPanel:tableComponent','tableForm:resultsPanel:tableComponent');return false" class="table-paging-previousLink">&lt;</a>

            <span class="table-paging-currentpage">Seite<input id="tableForm:resultsPanel:tableFooter:currentPage" type="text" name="tableForm:resultsPanel:tableFooter:currentPage" value="2" class="table-input" onkeypress="return displayedPageKeypressEvent(event);" />von 12<input id="tableForm:resultsPanel:tableFooter:sendDisplayedPage" type="submit" name="tableForm:resultsPanel:tableFooter:sendDisplayedPage" value="send" style="visibility: hidden; float: right;" onclick="mojarra.ab(this,event,'action','@form','tableForm:resultsPanel:tableComponent');return false" />
            </span><span id="tableForm:resultsPanel:tableFooter:pageSelector"><a id="tableForm:resultsPanel:tableFooter:nextLink" href="#" onclick="mojarra.ab(this,event,'action','tableForm:resultsPanel:tableComponent','tableForm:resultsPanel:tableComponent');return false" class="table-paging-nextLink">&gt;</a><a id="tableForm:resultsPanel:tableFooter:lastLink" href="#" onclick="mojarra.ab(this,event,'action','tableForm:resultsPanel:tableComponent','tableForm:resultsPanel:tableComponent');return false" class="table-paging-lastLink">&gt;&gt;</a></span></div><span id="tableForm:resultsPanel:tableFooter:table-footer-multiselect"></span>
    </div></div></div>]]></update>
    <extension primefacesCallbackParam="validationFailed">{"validationFailed":false}</extension>
</changes>
</partial-response>

非常感谢您的帮助!

PS:我也在使用Primefaces,但我想这与问题无关。

4

0 回答 0