【问题标题】:Use datepicker to get date range in jquery 1.6.3使用 datepicker 在 jquery 1.6.3 中获取日期范围
【发布时间】:2015-08-19 05:58:30
【问题描述】:

我正在尝试在 jsp 页面中添加一个 jquery datepicker 以获取日期范围作为输入。 以下是我目前的代码。

$(function() {
        $( "#createdAtFrom" ).datepicker({
            defaultDate: "+1w",
            changeMonth: true,
            numberOfMonths: 1,
            onClose: function( selectedDate ) {
                $( "#createdAtTo" ).datepicker( "option", "minDate", selectedDate );
            }
        });
        $( "#createdAtTo" ).datepicker({
            defaultDate: "+1w",
            changeMonth: true,
            numberOfMonths: 1,
            onClose: function( selectedDate ) {
                $( "#createdAtFrom" ).datepicker( "option", "maxDate", selectedDate);
            }
        });
    });

当我使用它时,我在 onclose 方法中得到一个未定义的值,所以一旦我打开日期选择器然后关闭它,我就不再让日历加载。我正在使用 jquery 1.6.3,是否有可能让它工作,我该怎么做?

【问题讨论】:

    标签: javascript jquery jsp date datepicker


    【解决方案1】:

    此代码在我的 jsp 页面中成功运行。希望这对你也有用。

    $(function() {
        $( "#from, #to" ).datepicker({
            defaultDate: "+1w",
            changeMonth: true,
            numberOfMonths: 3,
            onSelect: function( selectedDate ) {
                if(this.id == 'from'){
                  var dateMin = $('#from').datepicker("getDate");
                  var rMin = new Date(dateMin.getFullYear(), dateMin.getMonth(),dateMin.getDate() + 1); 
                  var rMax = new Date(dateMin.getFullYear(), dateMin.getMonth(),dateMin.getDate() + 61); 
                  $('#from').datepicker("option","minDate",rMin);                  $('#to').datepicker("option","maxDate",rMax);                    
                }
    
            }
        });
    });
    

    【讨论】:

    • 你用的jquery是什么版本的?
    • 我正在使用 jquery 1.6
    • 在我的项目中,我在两个日期之间给出了两个月的间隔,所以我可以搜索两个月之间的数据,所以我在 "var rMin" 中提到了这个间隔,其中 61 ......你可以根据你需要
    • 我需要的是,如果 from 有值,to table 的值应该总是大于 from tables 的值,如果 from 有值,则 from 的值应该总是小于 to 的值,看起来两者我们中的一些人使用相同的方法设置“minDate”和“maxDate”,您的代码在这里也给出了相同的错误。
    • 使用此链接。这可以帮助你。 stackoverflow.com/questions/8028465/…
    【解决方案2】:

    以下代码解决了这个问题。

    <script>
        $(function () {
            $("#createdAtFrom").datepicker({
                defaultDate: "+1w",
                changeMonth: true,
                numberOfMonths: 1,
                onClose: function (selectedDate) {
                    $("#createdAtTo").datepicker({minDate:
                            new Date($('#createdAtFrom').datepicker("getDate"))});
                }
            });
            $("#createdAtTo").datepicker({
                defaultDate: "+1w",
                changeMonth: true,
                numberOfMonths: 1,
                onClose: function (selectedDate) {
                    $("#createdAtFrom").datepicker({maxDate: new
                            Date($('#createdAtTo').datepicker("getDate"))});
                }
            });
        });
    </script>
    

    来源:-http://cdwijayarathna.blogspot.com/2015/10/adding-jquery-datepicker-to-select-date.html

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2011-07-04
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多