1

AnyTimeのデータ範囲セレクターのコードをまとめることができました。

$(document).ready(function() {
    $("#date_start").AnyTime_noPicker().removeAttr("disabled").AnyTime_picker({format:"%Y-%m-%d",earliest:new Date(2000,0,1,0,0,0)});
    $("#date_end").AnyTime_noPicker().removeAttr("disabled").AnyTime_picker({format:"%Y-%m-%d",earliest:new Date(2000,0,1,0,0,0)});
    var rangeFormat = "%Y-%m-%d";
    var rangeConv = new AnyTime.Converter({format:rangeFormat});
    var oneDay = 60*1*1000;
    $("#date_start").change( function() {
        var fromDay = rangeConv.parse($("#date_start").val()).getTime();
        var ToDay = rangeConv.parse($("#date_end").val()).getTime();
        if (fromDay > ToDay) {
            var ninetyDaysLater = new Date(fromDay + oneDay);
            $("#date_end").AnyTime_noPicker().removeAttr("disabled").val(rangeConv.format(ninetyDaysLater)).AnyTime_picker({
                earliest: ninetyDaysLater,
                format: rangeFormat
            });
        }
    });
    $("#date_end").change( function() {
        var fromDay = rangeConv.parse($("#date_end").val()).getTime();
        var ToDay = rangeConv.parse($("#date_start").val()).getTime();
        if (fromDay < ToDay) {
            var ninetyDaysLater = new Date(fromDay - oneDay);
            $("#date_start").AnyTime_noPicker().removeAttr("disabled").val(rangeConv.format(ninetyDaysLater)).AnyTime_picker({
                earliest: ninetyDaysLater,
                format: rangeFormat
            });
        }
    });
});

... 次の HTML 要素があります。

<label for="date_start">Start Date of Event</label>
<input type="text" name="date_start" value="" id="date_start" />
<label for="date_end">End Date of Event</label>
<input type="text" name="date_end" value="" id="date_end" />

ただし、エラーが発生しますが、その理由はわかりません。

他のウェブサイトや私が見つけたいくつかのチュートリアルで同様のコードを見つけたので、コードの何が問題なのかわかりません。

最初の日付フィールドをクリックすると、大量のエラーが表示されます。

「%Y-%m-%d」形式ではありません

... AnyTime 自体のコード (anytime.5.0.1-1403131246.js) の 971 行目に 2 回表示され、その後に同じファイルの同じ行にグループ化された 3 つが続きます。2 番目のフィールドをクリックすると、同じエラーが発生します。しかしその後、コードは機能し始めます。

コード内のソースを分離できないため、どこから始めればよいかわかりません (jQuery の学習モードは緑色です)。

4

1 に答える 1