0

Я использую автозаполнение jQueryUI для текстового поля. Я хочу, чтобы текстовое поле было заполнено так, что как только текстовое поле будет автозаполнено, переменная должна быть установлена ​​на определенное значение, связанное с этой конкретной опцией автозаполнения.jQuery UI autocomplete текст с атрибутом

Источник для автозаполнения:

var availableTags = ["Air University","Alabama A&M University", 
"Alabama State University","Athens State University",...]; 
//list very long, 2000+ 

Я думаю, что источник должен быть преобразован в объект JSON, такие как

[{ "id":"1", "name":"Air university";}....]; 

И тогда, когда выбран Air университет, переменная должна быть установлена ​​в значение в 'id'.

Код:

$("#tags").autocomplete({ 
    source: function(request, response) { 
    var results = $.ui.autocomplete.filter(availableTags, request.term); 

    response(results.slice(0, 10)); 
}, 
    minLength:5 
}); 

Как это можно сделать?

ответ

1

Создал jsfiddle, чтобы показать, как мы можем получить идентификатор выбранной опции. https://jsfiddle.net/aqbjb5k9/ Надеюсь, это поможет.

$(function() { 
var availableTags = [ 
    { 
    value: "Air University", 
    id: "1" 
    }, 
    { 
    value: "Alabama A&M University", 
    id: "2" 
    }, 
    { 
    value: "Alabama State University", 
    id: "3" 
    } 
]; 
$("#tags").autocomplete({ 
    source: availableTags, 
    select: function(event, ui) { 
    var result_selected = ui.item.id; 
    alert(result_selected);  
    return false; 
    } 
}); 
});