jquery を使用して dom に HTML を挿入する Web アプリがあります。
$('<div />').html('<span class="' + someID + '-id">SomeText</span>').insertAfter($(".someidentifier"));
私が抱えている問題は、someidentifier
クラスを持つ多くの要素が存在する可能性があり、それらのそれぞれで、このコードが2つある場合、想像できるように実行されることです:
<div class="someidentifier">Some text</div>
<div class="someidentifier">Some text</div>
このコードは、dom で以下を生成します。
<div class="someidentifier">Some text</div>
<span class="3123564654-id">SomeText</span>
<span class="3123564654-id">SomeText</span>
<div class="someidentifier">Some text</div>
<span class="3123564654-id">SomeText</span>
<span class="3123564654-id">SomeText</span>
どこにあるべきか:
<div class="someidentifier">Some text</div>
<span class="3123564654-id">SomeText</span>
<div class="someidentifier">Some text</div>
<span class="3123564654-id">SomeText</span>
そのため、.next()
関数を使用して、出力しようとしているクラスが次の兄弟にあるかどうかを確認し、そうであれば挿入をキャンセルすることを考えました。これは、私が言っているように理解できない部分であり、insertAfter(jQueryObject)
それを傍受してキャンセルする方法がわかりません。jQueryObject
この場合はdiv
すでに両方になるため、if ステートメントを使用できないことに注意してください。
次の兄弟としてのspan
クラスを持つオブジェクトがある場合、セレクターを変更してオブジェクトを含めないようにすることはできますか?3123564654-id