2012-03-14 3 views
0

Это кажется настолько простым, но я не могу заставить его работать:JQuery автозаполнения выберите: Функция не работает

var options, a; 
jQuery(function(){ 
    options = { 
    serviceUrl:'ajax/parts_by_partno.php', 
    select: function(event, ui) { 
    $("#hiddenId").val(ui.item.id); 
    } 
    }; 
    a = $('#fieldWithData').autocomplete(options); 
}); 

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

$("#hiddenId").val(ui.item.id); 

Я даже пытался просто изменить #hiddenId к чему-то статическим, например так:

$("#hiddenId").val('test'); 

Ничего не изменилось. Что я делаю не так?

+0

у вас есть ошибки на сайте? вы проверили в firebug или hrome dev tools – JIA

+0

В firebug нет ошибок. Автозаполнение работает правильно, но #hiddenId не меняется. – Devin

ответ

0

имеют вид на эту code..hope это поможет у

$('#selector').autocomplete({ 
    source: url, 
    select: function (event, ui) { 
     $("#txtAllowSearch").val(ui.item.label); // display the selected text 
     $("#txtAllowSearchID").val(ui.item.value); // save selected id to hidden input 
    } 
}); 

$('#button').click(function() { 
    alert($("#txtAllowSearchID").val(); // get the id from the hidden input 
}); 
+0

Firebug дает мне ошибку: $ ('# fieldWithData'). Autocomplete не является функцией. – Devin

+0

chck эта ссылка u получит идею ..... http://www.petefreitag.com/item/756.cfm –

0

Вот full blog entry о том, как использовать модуль Autocomplete

В принципе, вам нужно добавить функцию обратного вызова, когда выберите значение изменяется следующим образом:

select: function(e, ui) { 

     //create formatted friend 
     var friend = ui.item.value, 
      span = $("<span>").text(friend), 
      a = $("<a>").addClass("remove").attr({ 
       href: "javascript:", 
       title: "Remove " + friend 
      }).text("x").appendTo(span); 

      //add friend to friend div 
      span.insertBefore("#to"); 
     }, 

     //define select handler 
     change: function() { 

      //prevent 'to' field being updated and correct position 
      $("#to").val("").css("top", 2); 
     } 
    }); 
Смежные вопросы