2011-12-14 11 views
1

私は、jquery datepickerプラグインを使用してユーザーが日付を選択できるようにいくつかのフィールドを持つフォームを持っています。jquery Datepickerがフォーカスを当てて検証をトリガー

フォームを検証するには、送信ボタンをクリックした後でなければなりません。

フォームの検証にjquery validateプラグインが使用されています。

$("#newRequestForm").validate({ 
    debug: true, 
    rules : { 
         name : { 
           required: true, 
           minlength: 5 
         }, 
     dueDateValue : { 
      required: true, 
      DateFormat: true 
     } 
    } 
}) 

ユーザーは、検証をトリガーすることなくフォームフィールドをタブで移動できる必要があります。

これは、フォームの通常のテキストフィールドで正常に動作します。ただし、日付ピッカーが適用されているテキストフィールドでは、フォーカスがそのフィールドから移動するとすぐにフォームの検証がトリガーされます。 これは、datepickerが呼び出される方法です。 onSelectは、日付が選択された後にのみ検証されます。

$("#dueDateValue").datepicker({ 
       minDate: new Date(), 
       onSelect: function(dateText, inst) { 
         $("#newRequestForm").validate().element("#dueDateValue"); 
       } 
}); 

ユーザーがduedateフィールドにタブインして日付を選択せず​​に出ても、validateプラグインは検証しないでください。

これを行う方法はありますか? おかげ

+0

を設定しなければならなかった、私はTheerが財産..ですそれを自分自身を考え出し、onfocusout、検証中自体、あなたがこれを行うようになる。.. だけで、 $( "#newRequestForm")を設定する必要がありました検証({デバッグ:onfocusout {..}、 :真、ルール真 }); – redDevil

答えて

0

あり財産であり、onfocusout、検証自体の中にあなたがこれを行うようになることが...ちょうど良く、$("#newRequestForm").validate({ debug: true, rules : {..}, onfocusout: true });

関連する問題