2011-01-30 3 views
0

ねえ、私は誰かが私を助けてくれるのだろうかと思っています。私は javascriptを使用して検索フォームをシリアル化しています。しかし、ユーザーがクエリーを変更した場合(バックスペース、入力すると など)、それは更新されず(私はリスナーを使用しています)、未定義をスローします。どのように これを修正しますか? http://pastebin.com/edVmQ3siシリアライズフォームがリスナーで更新されない

EDIT:リスナーが機能しています。私がリンクしたコードから値を探しているときは、定義されていません。

リスナーはリンクされたコードを実行する関数を呼び出します。

+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)および[this]( 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 'form'を特定するには?編集:ちょうどそれについて読む - より適切であるように思われる(私は 'closest()'が兄弟をも検索するかもしれないことを意味したと思った。) – alex

+0

は動作していないようだ – user596186

関連する問題