5

DB に追加するために、「開始日」と「終了日」の範囲の日付を取得しようとしています。altFormat と altField を使用して DB 形式 (yy-mm-dd) で日付を取得し、Datepicker jquery UI コンポーネントを使用して UI に通常の日付形式を表示します。

私の質問は、Datepicker UI 範囲でこれをどのように使用するかです。from および to 日付ピッカーの altField はどこで指定できますか?

http://jqueryui.com/demos/datepicker/#date-range

私のコード:

var dates = $( "#hotel_display_checkin_date, #hotel_display_checkout_date" ).datepicker({
        defaultDate: "+1w",
        changeMonth: true,
        numberOfMonths: 1,
        altFormat: "yy-mm-dd",
        altField: "#hotel_checkin_date",
        onSelect: function( selectedDate ) {
            var option1 = this.id == "hotel_display_checkin_date" ? "minDate" : "maxDate",

                instance = $( this ).data( "datepicker" ),
                date = $.datepicker.parseDate(
                    instance.settings.dateFormat ||
                    $.datepicker._defaults.dateFormat,
                    selectedDate, instance.settings ),
                    options = {option1: date}
            dates.not( this ).datepicker( "option", options );
        }
        });

options={option1:date} に altField オプションを追加してみましたが、うまくいきません

4

1 に答える 1

11

あなたの主な問題はaltField、チェックイン日とチェックアウト日の両方に同じものを使用しようとしていることです:

altField: '#hotel_checkin_date'

それらを個別にバインドする場合:

var opts = {
    defaultDate: "+1w",
    changeMonth: true,
    numberOfMonths: 1,
    altFormat: "yy-mm-dd"
    onSelect: function(selectedDate) { ... }
};

$('#hotel_display_checkin_date').datepicker(
    $.extend({
        altField: '#hotel_checkin_date'
    }, opts)
);
$('#hotel_display_checkout_date').datepicker(
    $.extend({
        altField: '#hotel_checkout_date'
    }, opts)
);​

altField別々の sを指定できるようにすると、うまく機能するはずです。

デモ: http://jsfiddle.net/ambiguous/bJ8bh/1/

于 2012-05-16T04:36:45.183 に答える