私は非常に複雑なテーブル Web サイトを持っており、ページを閲覧したい (一度に 5 行など)。このブラウジングは Firefox では問題なく機能しますが、Internet Explorer (7 + 8) では機能しません。
HTTP トラフィックを調査したところ、サーバーによって生成された応答は正しいことがわかりましたが、IE ではコンテンツが更新されていません (コンソールなどにエラー メッセージも表示されません)。サンドボックスの例を作成するのに 1 日を費やしましたが、残念ながら小さな例はすべて完全に機能します。現在、次の 2 つのことを検討しています。
- 応答が大きすぎて IE7/IE8 JS エンジンで処理できません。
- 応答には、IE7/IE8 JS エンジンまたは Mojarra で消化できないシーケンスが含まれています。
Mojarra / IE JS でそのようなバグを認識していますか? Mojarra 2.1.3 を使用しています。
ブラウジングは ajax コマンド リンクによってトリガーされます。
<h:commandLink value=">" 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"><<</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"><</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">></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">>></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 を使用していますが、これは問題とは何の関係もないと思います。