ユーザー名、場所、およびそれらの写真を取得するために私が書いた関数を次に示します。問題は、mustMatch オプションを使用すると、1 つのバグを除いてすべてが正常に機能することです。S と入力すると、'Sebastian' 'einstain' が表示されます。sebastian を選択するとすべてが魅力的に機能しますが、einstain を選択するとすべてが消去されます。
私は change: event を使用しようとしましたが、いずれにせよ発火しません 理由はわかりません
$(document).ready(function(){
var wp_v = '3';
$("#searchbox").autocomplete("search.php?wp="+wp_v, {
matchContains: true,
//mustMatch: true,
width: 258,
scroll: true,
scrollHeight: 350,
dataType: 'json',
change: function (event, ui) {
alert('change');
if (!ui.item) {
$(this).val('');
}
},
parse: function(data) {
var array = new Array();
for (var i = 0; i < data.length; i++) {
array[array.length] = {
data: data[i],
value: data[i].name,
result: data[i].name
};
}
return array;
},
formatItem: function(row) {
var output = "<img class=img src='avatars/" + row.img + "'/> ";
output += "<span class=name>"+row.name+"</span><br/>";
output += "<span class=small>"+row.country+"</span><br/>";
return output;
}
}).result(function(event,item) {
if (item == undefined) {
$('#receiver').val('');
} else {
$('#receiver').val(item.uid);
}
});
});
これがソースです
[
{"uid":"2","name":"Sebastian Aparicio","img":"1339875067-Koala.jpeg","country":"Leder"},
{"uid":"12","name":"Mester Jakob","img":"default.jpeg","country":"Salg"},
{"uid":"19","name":"Mester Jakob","img":"1339875047-Penguins.jpeg","country":"Leder"}
]