【问题标题】:i used the daterange picker in my form, how can i get the changed dates in jquery when i click on apply button of date range picker我在表单中使用了日期范围选择器,当我单击日期范围选择器的应用按钮时,如何在 jquery 中获取更改的日期
【发布时间】:2021-05-21 06:20:38
【问题描述】:

这是 html 格式的日期范围选择器

    <div class="form-group " id="input-dates">
    <input class="form-control date-range-picker" id="dateRange" type="text" name="dates" placeholder="<?php echo get_phrase('when'); ?>.." autocomplete="off" required>
    <i class="icon_calendar"></i>
</div>

我在输入类型中使用了点击功能,但我没有在 jquery 中获得日期 我也使用 apply.daterangepicker 方法

  function myCallback(start, end) {
    $('#dateRange span').html(start.format('MMMM D, YYYY') + ' - ' + end.format('MMMM D, YYYY'));
    alert('hello world'); //etc, your code here
}
// attach daterangepicker plugin
$('#dateRange').daterangepicker(options, myCallback);

上面的功能我也用过,但是没用

【问题讨论】:

    标签: php jquery daterangepicker


    【解决方案1】:

    我认为您正在寻找的代码是:

    $('#dateRange').daterangepicker(options, myCallback)
    .on("input change", function (e) {
        console.log("Date changed: ", e.target.value);
    });
    

    e.target.value为日期范围,点击应用按钮触发函数

    下面是我之前的回答


    要获得您正在使用的代码,只需在创建日期选择器之前添加此行 let options = {},如下所示。您关于如何获取更改日期的问题:这些位于名为dates 的表单字段中 - 当您提交表单时,更改日期的字段称为dates,因为该元素具有name="dates"。因为同一个元素的 ID 为 dateRange,所以在表单提交之前获取它的值的方式是 $('#dateRange').val()`

    function showValues() {
      alert($('#dateRange').val());
      return false;
    }
    
    
    function myCallback(start, end) {
      $('#dateRange span').html(start.format('MMMM D, YYYY') + ' - ' + end.format('MMMM D, YYYY'));
    
    }
    // attach daterangepicker plugin
    /* Make sure you have the options object at least instantiated */
    let options = {} // you can add more options to this, but need at least this
    $('#dateRange').daterangepicker(options, myCallback)
      .on("input change", function(e) {
        console.log("Date changed: ", e.target.value);
      });
    <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" />
    <form onsubmit="return showValues()">
      <div class="form-group " id="input-dates">
        <input class="form-control date-range-picker" id="dateRange" type="text" name="dates" placeholder="<?php echo get_phrase('when'); ?>.." autocomplete="off" required>
        <i class="icon_calendar"></i>
      </div>
    
      <button class='btn btn-primary' type='submit'>Submit</button>

    【讨论】:

    • 感谢您的回复,但我希望点击应用按钮的日期值不在表单提交上
    • 是的,值为$('#dateRange').val()。应用按钮在哪里?
    • 当我们选择日期时,应用按钮位于日期选择器中,单击应用按钮时有取消和应用按钮我想要 jquery 中的日期值
    • @PriyankaPatil 知道了,抱歉我第一次没听懂。我修改了答案,现在您可以在用户单击 apply 时捕获该值
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2017-06-05
    • 1970-01-01
    相关资源
    最近更新 更多