How do I pass the date range selected in the daterangepicker to a variable or back to my input textbox in javascript?

强颜欢笑 提交于 2019-12-25 01:38:06

问题


My javascript below using preset ranges for DateRangePicker - I need to pass the selected start and end dates to two variables call StartDate and EndDate or pass it back to my LogiXML input text box. I am not sure how to do this. Please help.

Note: I don't want to run the daterangepicker logic for two different input fields(from and to). I want to use one input field but the start and end dates are passed to two separate variables.

I am using comiseo.daterangepicker please help me.

$(document).ready(function() {
                    $("#inpDatePicker").daterangepicker({
                        presetRanges: [{
                            text: 'Today',
                            dateStart: function() { return moment() },
                            dateEnd: function() { return moment() }
                        }, {
                            text: 'Month to Date',
                            dateStart: function() { return moment().startOf('month')  },
                            dateEnd: function() { return moment() }
                        }, {
                            text: 'Quarter to Date',
                            dateStart: function() { return moment().startOf('quarter') },
                            dateEnd: function() { return moment() }
                        }, {
                            text: 'Year to Date',
                            dateStart: function() { return moment().startOf('Year') },
                            dateEnd: function() { return moment() }
                        }],
                        applyOnMenuSelect: true,
                        datepickerOptions: {
                            minDate: 0,
                            maxDate: null,
                            numberOfMonths : 3,
                            changeMonth: true,
                            changeYear: true

                        }
                    })
                });

回答1:


$("#inpDatePicker").val() will return an object with start and end. You can listen to your $("#inpDatePicker")'s change event to see when to get the values.

$("#inpDatePicker").daterangepicker({
  onChange: function() {
    StartDate = $("#inpDatePicker").val().start;
    EndDate = $("#inpDatePicker").val().end;
  }
}



回答2:


JQuery Declaration:

$("#inpDatePicker").daterangepicker({...})

Event Trigger (This goes in after an event is fired):

var range = $("#inpDatePicker").daterangepicker("getRange");
$("#range_start").val(range['start']);
$("#range_end").val(range['end']);

HTML:

<input id="inpDatePicker" name="inpDatePicker" type="text">
<input type="hidden" name="range_start" id="range_start">
<input type="hidden" name="range_end" id="range_end">


来源:https://stackoverflow.com/questions/27548737/how-do-i-pass-the-date-range-selected-in-the-daterangepicker-to-a-variable-or-ba

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!