1

私は次のHTMLを持っています:

<div data-name="countrySelectorRoot">
    <select>
        <option value="C1">Country 1</option>
        <option value="C2">Country 2</option>
        <option value="C3">Country 3</option>
        <option value="C4">Country 4</option>
        <option value="C5">Country 5</option>
    </select>

    <script type="text/javascript">
        // Some script which finds parent div...
    </script>
</div>

スクリプト内に、「countrySelectorRoot」divを見つけるために必要なコードが必要です(var MyRoot = // Code that finds element with data-name="countrySelectorRoot").

ただし、同じデータ名属性と同じ内容の複数のdivを持つことができますが、スクリプトの親である特定のdivを見つける必要があります。

これを行う方法?

4

4 に答える 4

1

これを試して

   $('div[data-name="countrySelectorRoot"][/Script]')

スクリプトの親である特定のものを選択するものとします。

于 2012-06-16T14:09:30.530 に答える
0

eq()メソッドを 試してください:

$('div[data-name="countrySelectorRoot"]:eq(0)') // this selects first div

または:has

$('div[data-name="countrySelectorRoot"]:has(script)') 
于 2012-06-16T14:08:01.097 に答える
0

これはあなたにアイデアを与えるはずです:

$('div script').parent()

jsBinデモ

しかし、正直なところ、JavaScriptを間違った方法で使用していると思います。

于 2012-06-16T14:14:53.057 に答える
0

スクリプトタグが含まれているものを具体的にターゲットにするには、:hasフィルターを使用します

$('[data-name="countrySelectorRoot"]:has(script)');
于 2012-06-16T14:15:26.660 に答える