2011-01-10 9 views
5

私はajax機能を使用しています。入力キーを使用して提案を選択すると、送信ボタンが自動フォーカスされるため、フォームは自動的に送信されます。 Enterキーを使用してフォームを送信するだけでなく、入力キーを使用してajaxの提案を選択する方法はありますか?私はすべてのフィールドの値を入力すると、送信ボタンだけが有効になるような何か。私はAjax機能を使用しているため、Enterキーを押したときにフォームの送信を無効にします。

答えて

4

どのようにAjax関数を呼び出していますか?これは、フォームのsubmitイベントハンドラ内にある必要があります。あなたは、イベントハンドラの戻りfalseを持っている場合と、それは正常に提出しません。

<form onsubmit="doAjaxSubmit(); return false;"> 
    ... 
</form> 
+0

オートコンプリートフィールドに入力してもAJAXの送信が行われるため、この問題は解決しないようです。 – kprevas

+0

しかし、私はonSubmit呼び出しでフォームのバリデーターメソッドを使用しています。doAjaxSubmit()がある場合は、このメソッドをどのように呼び出しますか。 –

2

あなたは.keypress()メソッドを使用して押されたキーを検出することができます。フォームがif文での裏にあなたのAjaxのものを提出して行うために、このことから、あなたはreturn false;ことができるようになります。

http://api.jquery.com/keypress/

+0

jqueryをajax機能に使用していないため、Jquery.keypress()関数を使用できません。 –

1

すべてのフィールドに値を持っている場合は、フォームのonSubmitリターンtrueを持つことができ、そうでない場合はfalseとなります。

関連する問題