2016-07-14 3 views
0

選択肢変更イベントでは、選択値を得るために$("select option:selected")のような不器用なコードを書くのではなく、thisまたはevent.targetを選択して得られないのはなぜですか?selecteオプションの変更イベントでthisおよびevent.targetを選択した値を取得できないのはなぜですか?

変更イベントが発生すると、domのオプションで何らかのdata-*属性にアクセスする必要があるという問題が発生したためです。 docsから

答えて

1

jQueryハンドラを呼び出すと、このキーワードはイベントがに送達されている要素への参照です。直接バインドされたイベントの場合は、これがイベントがアタッチされた要素であり、委任されたイベントの場合は、これは要素マッチングセレクタです。 (イベントは子孫要素からバブリングした場合、これはのevent.targetに等しくなくてもよいことに留意されたい。)select-changeイベントについて

、このrefersselectの要素は、したがって、あなたがthis.value又は$(this).val()を使用して値を取得することができます。

これはchangedの文脈の下にあるオプションのみが選択要素(this)を選択しますようoption要素、

利用$('option:selected', this)data-*属性を取得するには

関連する問題