0

おそらくIE8のバグであるという奇妙な問題がありますが、回避策を探しています。

UI の説明:

多くの行を表示するフォームがあります。ユーザーがいずれかの行に値を入力すると、基本的な検証が実行され、その横に「削除」リンクが追加されます。(目標は、入力された行を削除することです)。

問題の説明:

  • ユーザーがデータを入力します
  • ユーザー切り替えウィンドウ (他の IE タブに移動するか、メモ帳などの別のソフトウェアに切り替えることもできます)
  • IE に戻り、別の行に入る

    --> ユーザーが別の場所をクリックしても、「onchange」イベントは発生しません。

これは、Chrome やその他のブラウザーで問題なく動作します (ウィンドウを切り替えても、イベントは正常に発生します)。

回避策 - 別のソフトウェアに切り替える前に、ユーザーがタブを押すか別のセルをクリックすると、「onchange」イベントが期待どおりに機能します。

誰かが同様の問題を抱えていますか、または同様の動作を行い、すべてのブラウザーで機能する別の方法を知っていますか?

コードは次のとおりです。

<rich:column>
    <h:inputText id="batchSaid" value="#{currentBatch.batchSaid}" onkeypress="enableValidateitemsButton(this);" 
                onblur="validateCase(this,'MYVALUE');enableValidateitemsButton(this);">
        <a4j:support event="onchange" process="batchAdd" action="#{itemsPageFormImpl.enableValidateBtnDisableActivateBtn(currentBatch, tRowId)}" 
                reRender="deleteBatchLink, deleteBatchLinkId" ajaxSingle="true"/>
    </h:inputText>
</rich:column>
<rich:column id="deleteBatchLinkId">
    <div align="right">
        <a4j:commandLink id="deleteBatchLink" style="font-weight:bold;" value="Delete" action="#{itemsPageFormImpl.deletBatch}" reRender="batchdataTable" 
                rendered="#{currentBatch.showBatchRowDelBtn}" ajaxSingle="true">
            <f:setPropertyActionListener target="#{itemsPageFormImpl.deleteBatchId}" value="#{currentBatch.batchId}" />
        </a4j:commandLink>
    </div>
</rich:column>

問題は、deleteBatchLink が表示されないことです。

4

1 に答える 1

0

最終的にこれに対する解決策は見つかりませんでした。ユーザーは回避策を使用します。

于 2013-06-08T00:16:23.027 に答える