送信ボタンをクリックしたときにフォームの有効性を確認したい。有効な場合、フォームを送信する必要があります。それ以外の場合は何もしません。送信ボタンを無効にし、クリックして有効性を確認して有効にしようとしました。しかし、このアプローチには 2 つの問題があります。1: 無効なボタンでクリックが検出されない 2: クリックが検出されたとしても、おそらく無限ループに陥るでしょう。ボタンが有効になった後の 2 回目のクリックで、有効性チェックが再度トリガーされます。
9176 次
1 に答える
6
を使用する必要がありますevent.preventDefault()
。これを読んでください:http://api.jquery.com/event.preventDefault/
大まかなサンプルコードドラフト:
$('your-submit-button').click(function(event){
if (! validate() ) {
event.preventDefault();
showErrors();
}
})
検証関数はどこvalidate()
にありますか。検証が失敗した場合はfalseを返します。
編集:
必要なため、
サンプルハンドラーはclick
イベントにバインドされます
送信ボタンをクリックしてフォームの有効性を確認するには
あらゆるタイプのフォーム送信に対して検証を行うには、の.submit()
代わりにを使用することをお勧めします。.click()
サンプルはほとんど変更されていません。
$('#your-form-id').submit(function(event){
if (! validate() ) {
event.preventDefault();
showErrors();
}
})
于 2012-06-29T07:20:31.757 に答える