HTMLコンテンツを格納する基本的な文字列変数があります。
文字列内のhtmlは、次のような複雑なリストです。
<ul>
<li>One
<ul>
<li>a</li>
<li>b</li>
<li>c</li>
</ul>
</li>
<li>Two
<ul>
<li>d</li>
<li>e</li>
<li>f
<ul>
<li>g</li>
<li>h</li>
<li>i</li>
</ul>
</li>
</ul>
</li>
<li>Three</li>
上記は単純化された例ですが、ご覧のとおり、リスト要素の数は不明です。list要素には、別のリストを含めることができます。レベルの数は不明です(リスト要素には不明な(おそらく最大9つの)親が含まれる可能性があります<ul>
。
この文字列をHTMLに変換すると、次のようになります。
var obj = $(myHTMLString);
ただし、これはリスト要素の最初のレベルのみを返します。したがって、次のforループでは、最初のレベルのみが検索されます。私は子要素を検索する方法を知っていますが(コードのelseセクションで)、リストのすべてのレベルでこれを実行する必要があります-これは不明です。
for (var i=0; i<obj.length;i++) {
if ( obj[i].id == someOtherVariable ) {
//we have found it
}
}
HTML変数(obj)ですべてのリスト要素を検索する方法はありますか?
console.log( $(myHTMLString) );
私はそれがこのように見えるときにそれを追加したいと思います: