O preenchimento automático de UI do jQuery mostra valor em vez de rótulo no campo de entrada
Um problema potencialmente simples com o preenchimento automático de UI do jQuery está me atrapalhando. Minha fonte é
var ac = [
{
label: "One Thing",
value: "One-Thing"
},
{
label: "Two Thing",
value: "Two-Thing"
},
]
Eu estou invocando o widget com
$(function() {
$( "#search" ).autocomplete({
source: PK.getAutocompleteSource(),
focus: function( event, ui ) {
$("#search").val(ui.item.label);
return false;
},
select: function( event, ui ) {
$("#search").val(ui.item.label);
PK.render(ui.item.value);
}
});
});
Tudo funciona bem. Quando eu digito no#search
campo de entrada, o rótulo correspondente é exibido na lista suspensa e quando euselect
a pesquisa correta é executada. O widget mostra mesmo olabel
no#search
campo de entrada conforme seleciono itens diferentes no menu suspenso usando as teclas de seta (ou o mouse). Exceto, assim que eu entrar, o widget preenche#search
campo de entrada com ovalue
ao invés delabel
. Então o campo mostraUma Coisa ao invés deuma Coisa.
Como posso corrigir isso? Certamente o que estou esperando é o comportamento mais razoável, não?