2011-01-25 3 views
1

ユーザは、Date FromフィールドとDate Toフィールドを入力する必要があります。 Date ToフィールドはDate Fromの後になければなりません。 これをJQueryでどのように強制するのですか? 現在のコードは機能しません。デフォルトの日付を指定しても機能しません。JQuery:1 datepicker日付からToTを制限する

<script type="text/javascript" language="javascript"> 
    $('#DateFrom').datepicker({ dateFormat: 'dd-MM-yy', changeMonth: true, changeYear:true, yearRange: 'c-1:c+1' }); 
    $('#DateTo').datepicker({ dateFormat: 'dd-MM-yy', changeMonth: true, changeYear: true, yearRange: 'c-1:c+1' }); 
    $('#DateFrom').datepicker({ onSelect: function (dateStr) { 
     $('#DateTo').datepicker({ defaultDate: dateStr }); 
    } 
    }); 
    $('#DateTo').datepicker(); 

</script> 

答えて

2

datepickerのminValueオプションを使用できます。以下 サンプル:http://jsfiddle.net/dW4n8/2/

編集@

<input type="text" id="from"> 
<input type="text" id="to"> 
<script type="text/javascript"> 
$(function(){ 
    $("#to").datepicker(); 
    $("#from").datepicker().bind("change",function(){ 
     var minValue = $(this).val(); 
     minValue = $.datepicker.parseDate("mm/dd/yy", minValue); 
     minValue.setDate(minValue.getDate()+1); 
     $("#to").datepicker("option", "minDate", minValue); 
    }) 
}); 
</script> 

の作業exmapleは:あまりにも日から除外するようにサンプルを更新しました。

+0

あなたの編集以来、それは動作を停止しました。 Firebugでは、エラーメッセージ 'uncaught exception:位置2の予期しないリテラル' – arame3333

+0

あなたのページのdatepickerに使用している日付形式は何ですか? – Chandu

+0

このメソッドを使用しているときに気付いたのは、from dateを選択するとto dateセクションが変更されたことです。たとえば、デフォルトの値をTBCに設定します。これはフォーム上では問題ありません。しかし、from日付を選択するときにあなたのメソッドを使用すると、toフィールドはwippedされます - これは通常の動作ですか? – Scoobler

0

適切なコールバックにカスタム検証を追加する必要があります。 AFAIK jquery datepickersには最低限の日付はありません。 また、onCloseコールバックを見てみることをお勧めします。

関連する問題