アオトコンプリートで名前(カウント)を自動候補として表示したいのですが、項目を選択すると入力ボックスに名前だけが出力されます。私のデータ形式はこんな感じです
[{"name":"Test","count":"5"},{"name":"Javascript","count":"1"}]
複数選択されたアイテムが印刷された状態で、カウントなしで名前を表示できるコード:
jQuery(document).ready(function ($){
function split( val ) {
return val.split( /,\s*/ );
}
function extractLast( term ) {
return split( term ).pop();
}
$("#ctags-input")
.bind( "keydown", function( event ) {
if ( event.keyCode === $.ui.keyCode.TAB &&
$( this ).data( "autocomplete" ).menu.active ) {
event.preventDefault();
}
})
.autocomplete({
source: function(req, add){
var ctags_action = 'ctags_autosuggest';
$.getJSON(CTags.url+'?callback=?&action='+ctags_action, req, function(data) {
var suggestions = [];
$.each(data, function(i, val){
suggestions.push(val.name);
});
add(suggestions);
});
},
focus: function() {
return false;
},
select: function( event, ui ) {
var terms = split( this.value );
terms.pop();
terms.push( ui.item.value );
terms.push( "" );
this.value = terms.join( ", " );
return false;
}
});
});
試してみsuggestions.push(val)
ました;うまくいきません。私も試し
ましたsuggestions.push(val.name + "C" + count + ")" );
これは名前(カウント)を表示できますが、選択すると(カウント)も選択されます。表示名(カウント)を候補として表示し、名前のみを入力するにはどうすればよいですか?