Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jquery/68.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 将所选日期范围选择器值推送到URL_Javascript_Jquery - Fatal编程技术网

Javascript 将所选日期范围选择器值推送到URL

Javascript 将所选日期范围选择器值推送到URL,javascript,jquery,Javascript,Jquery,我在我的网站上使用一个日期范围选择器,我需要将所选的开始和结束日期推送到URL,该URL也有其他参数,因此在推送数据时,它不能删除其他参数。请告诉我我必须在代码中添加哪些操作才能执行此操作。:)提前谢谢 PS我是新的Javascript <script type="text/javascript" src="https://cdn.jsdelivr.net/jquery/latest/jquery.min.js"></script> <script type="te

我在我的网站上使用一个日期范围选择器,我需要将所选的开始和结束日期推送到URL,该URL也有其他参数,因此在推送数据时,它不能删除其他参数。请告诉我我必须在代码中添加哪些操作才能执行此操作。:)提前谢谢 PS我是新的Javascript

<script type="text/javascript" src="https://cdn.jsdelivr.net/jquery/latest/jquery.min.js"></script>
<script type="text/javascript" src="https://cdn.jsdelivr.net/momentjs/latest/moment.min.js"></script>
<script type="text/javascript" src="https://cdn.jsdelivr.net/npm/daterangepicker/daterangepicker.min.js"></script>
<link rel="stylesheet" type="text/css" href="https://cdn.jsdelivr.net/npm/daterangepicker/daterangepicker.css" />



<div id="reportrange" style="background: #fff; cursor: pointer; padding: 5px 10px; border: 1px solid #ccc; width: 10%">
<i class="fa fa-calendar"></i>&nbsp;
<span></span> <i class="fa fa-caret-down"></i>
</div>




    <script type="text/javascript">
        $(function() {

            var start = moment().subtract(29, 'days');
            var end = moment();

            function cb(start, end) {
                $('#reportrange span').html(start.format('MMMM D, YYYY') + ' - ' + end.format('MMMM D, YYYY'));
            }

            $('#reportrange').daterangepicker({
                startDate: start,
                endDate: end,
                ranges: {
                   'Today': [moment(), moment()],
                   'Yesterday': [moment().subtract(1, 'days'), moment().subtract(1, 'days')],
                   'Last 7 Days': [moment().subtract(6, 'days'), moment()],
                   'Last 30 Days': [moment().subtract(29, 'days'), moment()],
                   'This Month': [moment().startOf('month'), moment().endOf('month')],
                   'Last Month': [moment().subtract(1, 'month').startOf('month'), moment().subtract(1, 'month').endOf('month')]
                }
            }, cb);

            cb(start, end);

        });
        </script>

$(函数(){
var start=moment().减去(29,'天');
var end=力矩();
功能cb(开始、结束){
$('#reportrange span').html(start.format('MMMM D,YYYY')+'-'+end.format('MMMM D,YYYY'));
}
$(“#reportrange”).daterangepicker({
开始日期:开始,
完日期:完,
范围:{
“今天”:[时刻(),时刻()],
“昨天”:[moment().subtract(1,'天'),moment().subtract(1,'天')],
“过去7天”:[力矩().减去(6,'天'),力矩()],
“过去30天”:[力矩().减去(29,'天'),力矩()],
“本月”:[moment().startOf('Month'),moment().endOf('Month'),
‘上个月’:[moment().subtract(1,'Month').startOf('Month'),moment().subtract(1,'Month').endOf('Month')]
}
},cb);
cb(开始、结束);
});

使用javascript将其存储在会话中

// Store
sessionStorage.setItem("lastname", "Smith");
// Retrieve
document.getElementById("result").innerHTML = sessionStorage.getItem("lastname");
开始和结束代表你的日期吗

如果是:location.href+=“&startDate=“+start+”&endDate=“+end

顺便说一句,这实际上会用这些参数以及已经存在的参数重新加载页面,除非它是某种形式的标签URL

注意,不要把它放在某个地方,在重新加载页面时,代码会再次调用自己,因为这样你可能会陷入无限的重新加载循环,直到URL缓冲区中断