2013-03-24 2 views
2

Есть ли способ, вы можете заставить jQueryUI автозаполнение для отображения метки данных, а не значения данных:JQuery Autocomplete нажатие клавиши вниз имя этикетки, а не значение?

Например

[{ «метка»: «имя», «значение»: «1»} , { "метка": "name3", "значение": "6"}, { "метка": "имя1", "значение": "8"}, { "метка": "имя2", "значение": «10»}]

$(".auto-search").autocomplete({ 
    minLength: 2, 
    dataType: 'json', 
    source: tempJson, 
    focus: function(event, ui){ 
     $('input[name="user-name"]').val(ui.item.label); 
    }, 
    select: function (event,ui){ 
     $('input[name="user-name"]').val(ui.item.label); 
     $('input[name="user-id"]').val(ui.item.value); 
     return false; 
    } 
}) 

Приведенный выше код, при нажатии кнопки вниз, отображает значение, а не метки. Можно ли изменить ярлык?

+0

попытаться вернуть JSON [{ярлык: "имя", значение: "1"}], а именно: без двойных котировок –

ответ

9

Убедитесь, что return false или предотвратить действие по умолчанию события из обработчика focus события:

focus: function(event, ui){ 
    event.preventDefault(); 
    $('input[name="user-name"]').val(ui.item.label); 
}, 
+0

Wow andrew это выглядит как правильный ответ, я дам ему goongiht Спасибо +1. – Bruce

+0

Спасибо, что работает отлично. – Bruce

+0

@ bluebill1049: Без проблем! Рад помочь. –

Смежные вопросы