2010-12-29 10 views
1

私はjquery、javascript、perlの組み合わせでこの内部Webページを持っています。ウェブページは現時点で問題なく動作します。私はserialize()を使って、手動でやっているので、渡す変数/値を簡単に収集できるようにすることを考えていました。jQuery、フォームタグのバグ?

しかし、一度コードを入力すると、<form id="something"> </form>のページは以前と変わりません。私が提出すると、それは見えます、ウェブページはサイトの先頭に戻ってリフレッシュされます。

これは何をしていますか?これを防ぐ方法

答えて

2

これはjQueryのバグではなく、HTMLの仕組みです。フォームタグにURLがない場合は、それ自体にPOST(ページをリフレッシュ)します。フォームをAJAX経由でPOSTする場合は、次のいずれかの方法を使用して、フォームの再読み込みを停止できます。

あなたはそれが提出されていますデフォルトのフォームアクション防ぐことができます。

$('form').submit(function(e){ 
    e.preventDefault(); 
}); 

それともjavascript:void(0)にformタグを指すことができます:

<form action="javascript:void(0);"> 

を私はあなたがpreventDefault()を使用することをお勧めが、両方の方法が働きます。

+0

よろしくお願いいたします。 –