JQuery автозаполнение получить значение - PullRequest
0 голосов
/ 20 февраля 2012

автозаполнение работает нормально. Я поставил скрытое значение для сохранения значения автозаполнения этим методом мой код:

$("#cityOp").autocomplete({
        source : function(request, response) {      

        var city_value = jQuery("#cityOp").val();


        $.ajax({
            url: "city.html",

            dataType: "json", 
            data : {
                filter : city_value
            },           


            success : function(data) {

                response(jQuery.map(data.cities,function(item) {
                                    return {
                                        value : item.locationName,
                                        key : item.locationId

                                    };
                                }));
                },
select : function(event, ui) {

         $("#theHidden").val(ui.item.key) ;
    }

    }); 

тогда я хочу получить этот идентификатор местоположения для сохранения значения местоположения, поэтому я попробовал как:

save(){
var locationValue=$("#theHidden").val(); 
//other saving codes
}

но я получил здесь locationValue не определено.

Как я могу получить это скрытое значение в функции сохранения? Функция автозаполнения находится в документе при готовности, а функция сохранения - в формате js.

Ответы [ 2 ]

1 голос
/ 21 февраля 2012

это решено

select : function(event, ui) {

        setLocationValue(ui.item.key);
    }

в js

var locationValue;

function setLocationValue(value){
    locationValue=value;
}
0 голосов
/ 20 февраля 2012

В ответе метода $ ajax вы отображаете данные в объект JSON только с двумя свойствами: значением и ключом.

Затем в выборе вы используете свойство, которое больше не существует.

Если вы хотите, чтобы эти исходные значения все еще существовали, вы должны также отобразить их. Кроме того, вы можете сохранить идентификатор в скрытое поле, например:

$("#theHidden").val(ui.item.key);

Дайте мне знать, если это не сработает для вас.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...