0

このコードを検討してください:

<div id="div1">
    <input type="radio" class="a" />
    <input type="radio" class="b"/>
    //....
    <input type="radio"  class="n" />
</div>
<div id="div2">
    <input type="radio" class="a" />
    <input type="radio" class="b"/>
    //....
    <input type="radio"  class="n" />
</div>

次のように、デリゲート イベント ハンドラーをこれらのラジオ ボタンにバインドします。

$("div").on("change","input",myHandler);

function myHandler(e)
{
  alert($(this).prop("class"));
  alert($(e.currentTarget).prop("class"));  // same results...
}

私の質問は:どのようにdivを参照したり、MyHandler関数からdiv Idを取得したりするのですか? div ? _

4

2 に答える 2

4

をご覧くださいevent.delegateTarget。ハンドラーをアタッチした DOM 要素を参照します。したがって、そのidプロパティを取得するには:

function myHandler(e) {
  alert(e.delegateTarget.id);
}

フィドル

于 2013-02-09T20:58:23.463 に答える
1

jQuery には .parent() 関数があります: http://api.jquery.com/parent/

イベント ハンドラー内:

$(this).parent()

于 2013-02-09T21:09:09.017 に答える