圆形输出为整数

时间:2012-03-21 22:53:34

标签: jquery datepicker rounding

我有一个JQuery日期选择器,它输出一个span标签中的晚数,但有时这个数字是整体出来的,有时是小数。我如何修改这个脚本,以便输出的夜晚总是一整天。

    <script type="text/javascript">
    //<![CDATA[

    // check-out date >= check-in date
    function customRange(dates) { 
        if (this.id == 'startdate') { 
            jQuery('#enddate').datepick('option', 'minDate', dates[0] || null); 
        } 
        else { 
            jQuery('#startdate').datepick('option', 'maxDate', dates[0] || null); 
        }
        var edt = jQuery('#ed_timestamp').val();
        var sdt = jQuery('#sd_timestamp').val();
        if ((edt > 0) && (sdt > 0)) {
            jQuery('span.nights').text((edt - sdt) / (3600*24) + ' night(s)');
        } else {
            jQuery('span.nights').text('');
        }
    }

    jQuery(document).ready(function(){

        // Datepick input fields
        jQuery('#startdate').datepick({
            onSelect: customRange, 
            showTrigger: '#trigger',
            altField: '#sd_timestamp', 
            altFormat: jQuery.datepick.TIMESTAMP
        });
        jQuery('#enddate').datepick({
            onSelect: customRange, 
            showTrigger: '#trigger',
            altField: '#ed_timestamp', 
            altFormat: jQuery.datepick.TIMESTAMP
        });



    });

    //]]>
    </script>

提前致谢

1 个答案:

答案 0 :(得分:0)

您可以使用getDate从datepicker获取日期对象,然后按如下方式计算差异:

var edt = jQuery('#ed_timestamp').datepicker('getDate');
var sdt = jQuery('#sd_timestamp').datepicker('getDate');

Math.ceil((edt.getTime()-sdt.getTime())/1000*60*60*24)

注意1000 * 60 * 60 * 24是一天内的毫秒数。

见 - JavaScript日期 - http://www.w3schools.com/js/js_obj_date.asp并计算两个日期之间的差异 - http://www.javascriptkit.com/javatutors/datedifference.shtml