$("#e2").select2("val")
は値を返しますが、.$listtypes['name'] .
データ名またはオプションタグ表示からのエーテル。
選択したオプションのオプションのデータ名を取得したいのですが、どうすればこれを達成できますか?
これは私のオプションジェネレータです
foreach($core->list_types() as $listtypes){
echo "
<option
data-name='".$listtypes['name'] ."'
value='".$listtypes['id']."'>
".$listtypes['name'] ."
</option>";
}
これを使用できます
$("#e2 option:selected").text();
これを試してください:
$('#e2').select2('data')
選択したオプションデータを返す
私のためのこの仕事:
単純なselect2でラベル値を取得するには:
$('#myVar').select2('data')[0].<name_label_from_data_input>
select2変数からのデータダンプを行うと役立つ場合があります。
$('#myVar').on('change', function (evt) {
if ($('#myVar').select2('val') != null){
console.log($('#myVar').select2('data')[0]);
}
});
そして、ラベルのname属性をキャッチします。
がんばろう!
@Kishanと@xploshioOnの回答はv4.0 +では機能しないようです。
これを試してください:$("#e2").text().trim()
セレクタでattrメソッド.attr("data-name")
を使用します。