Выбор строки с типом твиттера впереди и обновление значений в той же строке

У меня есть таблица текстового поля, которая привязана к типу twitter, как это.

Не удалось связать twitter bootstrap typeahead для сгенерированных JQuery строк с текстовыми полями

Я хочу, чтобы результат выбора из типа впереди отображался в следующих текстовых полях в той же строке (n-й строке). Но обновляется только первая строка, поэтому я попробовал это.

$('#myTable').find('tr').click( function(){
   $(this).find('#mytext1').val(val1);
   $(this).find('#mytext2').val(val2);
}

Но для этого требуется дополнительный щелчок после того, как выбор сделан, и дублируется результат последней выбранной строки. Так может ли кто-нибудь помочь и предложить, как справиться с этой ситуацией?

Изменил код вот так

$('#mytext0').live('change', function(){
       //ajax call based on the user selection of mytext0, which is twitter bootstrap bind
       $(this).closest('tr').find('#mytext1').val(val1);
       $(this).closest('tr').find('#mytext2').val(val2);
});

Но это не работает, так как ближайший не знает метод find. Есть идеи??


person altsyset    schedule 19.05.2013    source источник
comment
$(this).closest('tr').find('#mytext1').andSelf().filter('#mytext1').val(val1);   -  person altsyset    schedule 19.05.2013


Ответы (1)


Я понял это, используя блог tatiyants @ http://tatiyants.com/how-to-use-json-objects-with-twitter-bootstrap-typeahead/, а затем в программе обновления я вызвал этот метод, чтобы обновить другие поля в таблице на основе выбора пользователя здесь идет метод:

function getDetail(id) { 
   var $selected; 
   $('#mytext0').live("change keyup", function (){
     $selected = $(this).closest("tr");
   });
   $.ajax({
     //make a post based on the id to your server and upon success
     success: function(result){
         $selected.find('#mytext1').andSelf().filter('#mytext1').val(result);
         $selected.find('#mytext2').andSelf().filter('#mytext2').val(result);
      }         
   })
}

Это решило тот факт, что результат обновлял только первую строку.

person altsyset    schedule 01.06.2013