js实现判断时间区间

来源:互联网 发布:汉字树 知乎 编辑:程序博客网 时间:2024/05/25 21:36
<%@ page language="java" contentType="text/html; charset=utf-8"
    pageEncoding="utf-8"%>
<%@ taglib uri="/struts-tags" prefix="s"%>
<%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core"%>
<%@ taglib prefix="fmt" uri="http://java.sun.com/jsp/jstl/fmt"%>
<c:set var="ctx" value="${pageContext.request.contextPath}" />
<%
    response.addHeader(
            "P3P",
            "CP=CURa ADMa DEVa PSAo PSDo OUR BUS UNI PUR INT DEM STA PRE COM NAV OTC NOI DSP COR");
%>
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
<title>登录日志详情</title>
<link rel="stylesheet" href="${ctx }/css/base/jquery.ui.all.css">
<link rel="stylesheet" href="${ctx }/css/common.css">
<script src="${ctx}/js/jquery-1.6.2.min.js" type="text/javascript"></script>
<script src="${ctx}/js/jquery-ui-1.8.15.custom.min.js"
    type="text/javascript"></script>
<script type="text/javascript" src="${ctx}/js/WdatePicker.js"></script>
<script type="text/javascript">
    Date.prototype.format = function(format) {
        var o = {
            "M+" : this.getMonth() + 1, //month
            "d+" : this.getDate(), //day
            "h+" : this.getHours(), //hour
            "m+" : this.getMinutes(), //minute
            "s+" : this.getSeconds(), //second
            "q+" : Math.floor((this.getMonth() + 3) / 3), //quarter
            "S" : this.getMilliseconds() //millisecond
        };
        if (/(y+)/.test(format))
            format = format.replace(RegExp.$1, (this.getFullYear() + "")
                    .substr(4 - RegExp.$1.length));
        for ( var k in o)
            if (new RegExp("(" + k + ")").test(format))
                format = format.replace(RegExp.$1, RegExp.$1.length == 1 ? o[k]
                        : ("00" + o[k]).substr(("" + o[k]).length));
        return format;
    };

    function queryReport() {
        var startDate = jQuery.trim(jQuery("#startDate").val());
        var endDate = jQuery.trim(jQuery("#endDate").val());
        getData(startDate, endDate, 10, 1);
    }

    function getData(startDate, endDate, numOfPage, pageNum) {
        jQuery.ajaxSetup({
            cache : false
        });
        var date_start = new Date();
        var date_end = new Date();
        var thisTime = 14 * 24 * 60 * 60 * 1000;
        date_start.setFullYear(startDate.substring(0, 4));
        date_start.setMonth(startDate.substring(5, 7));
        date_start.setDate(startDate.substring(8, 10));
        date_end.setFullYear(endDate.substring(0, 4));
        date_end.setMonth(endDate.substring(5, 7));
        date_end.setDate(endDate.substring(8, 10));

        if (startDate != null && startDate != '') {
            if (endDate != null && endDate != '') {
                if ((date_end - date_start) <= thisTime) {
                    jQuery.get("${ctx}/queryLoginCount.action", {
                        startDate : startDate,
                        endDate : endDate,
                        numOfPage : numOfPage,
                        pageNum : pageNum
                    }, function(data) {
                        jQuery("#reportDiv").html(data);
                    });
                } else {
                    alert("请查询两周内的数据!");
                }
            } else {
                date_start = new Date(date_start.getFullYear(), date_start
                        .getMonth() - 1, date_start.getDate());
                date_end = new Date(date_start.getFullYear(), date_start
                        .getMonth(), date_start.getDate() + 14);
                date_start = date_start.format('yyyy-MM-dd');
                date_end = date_end.format('yyyy-MM-dd');
                jQuery.get("${ctx}/queryLoginCount.action", {
                    startDate : date_start,
                    endDate : date_end,
                    numOfPage : numOfPage,
                    pageNum : pageNum
                }, function(data) {
                    jQuery("#reportDiv").html(data);
                });
            }

        } else {
            if (endDate != null && endDate != '') {
                date_end = new Date(date_end.getFullYear(),
                        date_end.getMonth() - 1, date_end.getDate());
                date_start = new Date(date_end.getFullYear(), date_end
                        .getMonth(), date_end.getDate() - 14);
                date_end = date_end.format('yyyy-MM-dd');
                date_start = date_start.format('yyyy-MM-dd');
                jQuery.get("${ctx}/queryLoginCount.action", {
                    startDate : date_start,
                    endDate : date_end,
                    numOfPage : numOfPage,
                    pageNum : pageNum
                }, function(data) {
                    jQuery("#reportDiv").html(data);
                });
            } else {
                var date_start = new Date();
                var date_end = new Date();
                date_start = new Date(date_start.getFullYear(), date_start
                        .getMonth(), date_start.getDate() - 14);
                date_start = date_start.format('yyyy-MM-dd');
                date_end = date_end.format('yyyy-MM-dd');
                jQuery.get("${ctx}/queryLoginCount.action", {
                    startDate : date_start,
                    endDate : date_end,
                    numOfPage : numOfPage,
                    pageNum : pageNum
                }, function(data) {
                    jQuery("#reportDiv").html(data);
                });
            }

        }
    }
</script>
</head>
<body>
    <table id="inputTable" width="100%" border="1" align="center"
        class="add_table">
        <tr>
            <td width="30%" class="addtable_left"><label>统计时间:</label></td>
            <td align="left" width="40%" class="tdright"><input
                id="startDate" name="startDate" class="Wdate" type="text"
                onClick="WdatePicker()" value="${startDate}" class="text">—<input
                id="endDate" name="endDate" class="Wdate" type="text"
                onClick="WdatePicker()" value="${endDate}" class="text"></td>

            <td colspan="4"><input value="查询" onclick="queryReport()"
                type="button" class="right-button02"></td>

        </tr>
    </table>
    <div id="reportDiv" style="overflow: auto; height: 300px;"></div>
</body>
<script type="text/javascript">
    $(function() {
        var frame = jQuery(window.parent.document).find("iframe")[0];
        var frameHeight = jQuery(frame).height();
        var inputTableHeight = jQuery("#inputTable").height();
        jQuery("#reportDiv").css({
            height : frameHeight - inputTableHeight - 20
        });
        //当窗口缩放时以上两种情况自适应
        window.onresize = function() {
            var frame = jQuery(window.parent.document).find("iframe")[0];
            var frameHeight = jQuery(frame).height();
            var inputTableHeight = jQuery("#inputTable").height();
            jQuery("#reportDiv").css({
                height : frameHeight - inputTableHeight - 20
            });
        };
    });
</script>
</html>
原创粉丝点击