jquery-select2プラグインを使用しており、AJAX によって自動入力される次のフィールドがあります。
<input type="hidden" id="player2" class="form-control select2">
これがJavaScriptです:
$('#player2').select2({
placeholder: "Select an opponent",
allowClear: false,
ajax: {
dataType: "json",
url: "getUsers.php",
data: function (term) {
return {
q: term, // search term
};
},
results: function (data) {
console.log(data);
return {results: data};
},
}
});
console.log($("#player2").select2("val"));
結果関数内の console.log に表示されるデータは、[{"id":"someone@gmail.com", "text":"someone"}] のように構造化されています。
選択肢が選択された後、console.log($("#player2").select2("val")) を試みると ID が表示されますが、テキストを取得できないようです。この場合、次のいずれも「someone」のテキスト値を取得するために機能せず、どこが間違っているのかわかりません。
$("#player2 option:selected").text()
$("#player2 option:selected").select2().text()
$("#player2").text()