0

setDate 関数を呼び出すと、jquery datepicker が再び表示されます。ページに複数の datepicker があります。1 つの datepicker 値が選択されているときに、表示されている他のすべてのカレンダーの値を設定したいのですが、datepicker をもう一度クリックするまでハングします。jquery 1.6.1 と jquery-ui-1.8.5 を使用しています

function initCalendarMulti() {
    $(".calendarmulti").each(function (index) {
        $(this).datepicker({ 
            numberOfMonths: 2,
            minDate: 1,
            maxDate: "+1Y",
            changeMonth: true,
            changeYear: true,
            duration: "fast",
            onSelect: setValuesMulti,
            regional: cul
        });
    });
}
    function setValuesMulti(elem, inst) {
    var temp;
    if (segmIndex == 1) return;
    for (var i = 1; i <= segmIndex; i++) {
        var depSrc = $("#segment" + i + " input[id=txtDeparture" + i + "]").datepicker("getDate");
        if ($("#segment" + (i + 1)).hasClass("hide") == false) {
        var id = "segment" + (i + 1) + " input[id=txtDeparture" + (i + 1) + "]";
        var depDes = $("#" + id).datepicker("getDate");
        if (eval(depDes - depSrc) < 0) {
            $("#" + id).datepicker("setDate", depSrc);//this line shows up the calendar again
            //depDes.setDate(depSrc); // this line does not do anything
        }
    }

    }
}
4

1 に答える 1

0

私はそれがすべきだと信じています

$("#" + id).datepicker('setValue', depSrc);
于 2012-12-03T17:40:05.843 に答える