PHPページへのリモートリクエストを使用して、単純なselect2検索ボックスを作成しています。
「jsonp」の代わりに「json」を使用することにしましたが、正しく動作しているようです。
問題は、結果が白であることです: 要素リストとしての書き込みはありません。
「投稿するには少なくとも 10 の評判が必要です」という理由で投稿できない画像では... -.- 文字「d」と次の入力ボックスが表示されます。
- 読み込みアイコンなし (検索が正常に終了したため)
- 「検索」書き込みなし (検索が正常に終了したため)
- 検索ボックスの高さは正確に 2 つの結果であり、結果を選択することはできますが、テキストは表示されません..青い選択部分だけが表示されます..
コードは次のとおりです。
function MultiAjaxAutoComplete(element, url) {
$(element).select2({
minimumInputLength: 1,
ajax: {
url: url,
dataType: 'json',
data: function(term, page) {
return {
q: term,
page_limit: 10
};
},
results: function(data, page) {
return {
results: data
};
}
},
formatResult: formatResult,
formatSelection: formatSelection,
initSelection: function(element, callback) {
var data = [];
$(element.val().split(",")).each(function(i) {
var item = this.split(':');
data.push({
id: item[0],
title: item[1]
});
});
//$(element).val('');
callback(data);
}
});
};
function formatResult(movie) {
return '<div>' + movie.title + '</div>';
};
function formatSelection(data) {
return data.title;
};
MultiAjaxAutoComplete('#advertiser', '/AJAXController');
返されるjsonデータは次のとおりです
[{"id":"12889","title":"Donnie Darko" },
{"id":"8", "title":"Another title"}
]
PS: 現時点では、「echo <<< EOF ...」を使用して json データを直接出力テキストとして返しているため、2 つの結果が得られました。
ありがとう、マウロ