1

AJAXソースから3つのDIVをロードするときに問題が発生します。返されるHTMLは次のようになります。

<div>
  <label for="firstName">First Name</label>
  <input id="firstName" name="firstName"....
</div>

したがって、このブロックが同じDOMで3回複製されたと想像してください。問題は、3番目にロードされたDIVのラベルをクリックすると、1番目にロードされたDIVのテキストボックスが強調表示されることです。だから今私が持っているのはIDが衝突しているHTMLの3つのブロックです。

誰かがこれの回避策を知っていますか?

ありがとう。

4

1 に答える 1

3

同じIDを持つ複数の要素を持つことは標準に準拠していません。その結果、IEの場合、Firefoxは1つの方法で動作し、Chromeは別の方法で動作します。

1つの方法は、AJAXソースからロードされるIDを変更することです。プレースホルダーIDを次のようid="UNIQUE_id"に提供してから、シリアルにインクリメントされた番号である可能性がある場所を使用することができます....html().replace(/UNIQUE_/g,something_unique));something_unique

于 2012-10-05T18:15:33.887 に答える