2011-01-30 3 views
0

Эй, ребята, мне интересно, может кто-то мне помочь. Я - , используя javascript для сериализации формы поиска. Он работает .. однако, если пользователь меняет запрос (обратная замена, набрав и т. Д.), Он не обновляет (я использую прослушиватель) и отбрасывает неопределенные. Как исправить это? http://pastebin.com/edVmQ3siСериализация формы не обновляется слушателем

РЕДАКТИРОВАТЬ: только для разъяснения, слушатель работает. Это просто становится неопределенным при поиске значений из кода, который я связал.

Слушатель просто вызывает функцию, которая выполняет связанный код.

+0

Вы должны опубликовать весь соответствующий код здесь, в том числе «слушателя.» – Pointy

+0

Что-то вроде http://jsfiddle.net было бы хорошо. –

+0

Связано с [this] (http://stackoverflow.com/questions/4843192/get-url-of-page-that-isnt-appearing-in-the-search-bar-google-instant) и [это] (http://stackoverflow.com/questions/4843489/javascript-serializing-question). – Raynos

ответ

0

Прикрепите его к keyup событию ...

var searchInput = $('form[name="gs"]'), 
    searchForm = searchInput.closest('form'); // Thanks Matt Ball 

var base = searchInput.attr('action'); 

searchInput.keyup(function() { 
    var params = searchForm.serialize(); 
    var url = base + '?' + params; 
    // Do what you need with url. 
}); 
+1

Как насчет использования '.closest()'? –

+0

@Matt Ball Чтобы определить «форму»? Редактирование: просто прочитайте об этом - кажется, более подходящим (я думал, что 'ближайший()' означает, что он может искать родных братьев.) – alex

+0

, похоже, не работает :( – user596186