Select2 で非常に苦労しましたが、このコンポーネントは学習曲線に見合うだけの価値があります。
ここに私のコンポーネントがあります:
$( '#e1' ).select2({
placeholder: "Select participants",
minimumInputLength: 1,
allowClear:true,
multiple: true,
ajax: {
url: "/transporter/app/search",
dataType: 'jsonp',
data: function ( term, page ) {
return {
query:term + '*',
searchFor:'users',
sortBy:'relevance',
format:'json',
page_limit:10
};
},
results: function ( data, page ) {
alert( data )
// return { results: data.response.userList.user };
}
},
formatResult: formatContacts,
formatSelection: formatContactsSelection,
escapeMarkup: function( m ) { return m; }
});
function formatContacts( item ) {
alert("GO")
return item.displayName;
};
function formatContactsSelection( item ) {
alert("HERE")
return item.loginName;
};
問題は、Chrome ネットワーク デバッガーでは有効な JSON が返されているのに、結果ハンドラーがアラート ( data ) をスローしないことです。それはなぜでしょうか?