jQuery移动Datebox的日期范围差异

时间:2012-01-04 09:14:14

标签: jquery date mobile range datebox

这里是代码和预览>> http://jsfiddle.net/shingou/PGFxZ/

你可以看到我已经使用了jquery mobile和jquery datebox插件。 我在这里有一个代码来区分这些日期。

function parseDate(str) {
    var mdy = str.split('/')
    return new Date(mdy[2], mdy[0]-1, mdy[1]);
}

function daydiff(checkinDate, checkoutDate) {
    return (checkoutDate-checkinDate)/(1000*60*60*24)
}
$('#checkoutDate, #checkinDate').live('change', function() {
    $('#numNights').each(function() {
        $(this).text(daydiff(parseDate($('#checkinDate').val()), parseDate($('#checkoutDate').val())));
    });
});

显然,如果我们在这里更改日期格式。

jQuery.extend(jQuery.mobile.datebox.prototype.options, {
    'dateFormat': 'mm/dd/YYYY',
    'headerFormat': 'mm/dd/YYYY',
});

例如我们这样做:

jQuery.extend(jQuery.mobile.datebox.prototype.options, {
    'dateFormat': 'ddd, dd mmm YYYY',
    'headerFormat': 'ddd, dd mmm YYYY',
});

范围日期之间的差异将导致NaN。

任何有关此问题的解决方案都非常有用,提前谢谢。

1 个答案:

答案 0 :(得分:2)

Datebox有一个.data('datebox').theDate函数可以从输入中获取日期,因此您无需解析它。

我相应地修改了你的小提琴http://jsfiddle.net/PGFxZ/3/