jquery datepicker IE 8秒日期未传输

时间:2014-06-11 14:29:04

标签: jquery internet-explorer-8 split datepicker undefined

我对jquery datepicker和IE8有一个奇怪的问题。我使用jquery datepicker在表单中有2个日期字段。单击第一个字段并选择日期将自动填充第二个日期字段,其中选择日期为datefield1 +一天 - 在FF,Chrome和最新的IE中,一切正常。但是使用IE8,第二个日期字段已填满但未传输。

这是我的代码:

$("#datePick1").datepicker({
    dateFormat: "dd.mm.yy",
    numberOfMonths: 1,
    showOn: "both",
    buttonImage: "images/calendar.png",
    buttonImageOnly: true,
    changeMonth: true,
    constrainInput: true,
    showButtonPanel: true,
    hideIfNoPrevNext: false,
    minDate: 0,
    onSelect: function(date) {
        var date2 = $('#datePick1').datepicker('getDate');
        date2.setDate(date2.getDate() + 1);
        $('#datePick2').datepicker('setDate', date2);
        $('#datePick2').datepicker('option', 'minDate', date2);
        var dateParts = date.split(".");
        $('#start_d').val(dateParts[0]);
        $('#start_m').val(dateParts[1]);
        $('#start_y').val(dateParts[2]);

        if ($('#datePick1').val() != '' && $(this).is('#datePick1'))
        {
            setTimeout(function() {
                $('#datePick2').datepicker('show');
            }, 1);
        }
    }
}).on('focus', function() {
    $(this).trigger('blur');
});

$('#datePick2').datepicker({
    dateFormat: "dd.mm.yy",
    numberOfMonths: 1,
    showOn: "both",
    buttonImage: "images/calendar.png",
    buttonImageOnly: true,
    changeMonth: true,
    showButtonPanel: true,
    hideIfNoPrevNext: false,
    onClose: function(date2) {
        var datePick1 = $('#datePick1').datepicker('getDate');
        console.log(datePick1);
        var datePick2 = $('#datePick2').datepicker('getDate');
        if (datePick2 <= datePick1) {
            var minDate = $('#datePick2').datepicker('option', 'minDate');
            $('#datePick2').datepicker('setDate', minDate);
        }
        var dateParts = date2.split(".");
        $('#end_d').val(dateParts[0]);
        $('#end_m').val(dateParts[1]);
        $('#end_y').val(dateParts[2]);
    }
}).on('focus', function() {
    $(this).trigger('blur');
});

使用IE8调试器告诉我var dateParts = date2.split(".");未定义(参见第二个块)。

有什么想法吗?

0 个答案:

没有答案