【问题标题】:Facing issue to show am pm from database面临从数据库显示 am pm 的问题
【发布时间】:2020-11-05 10:49:23
【问题描述】:

我使用 daterangerpicker 和 moment.js 作为日期范围。现在,当我将值从数据库传递到 daterangepicker 时,它需要一些默认时间戳。最初我尝试查看 daterangepicker 格式,但没有得到任何帮助。后来我尝试探索moment.js方法仍然没有任何运气

我在浏览器控制台上检查的这些值

日期格式 "MM-DD-YYYY hh a"

$(this).val()
“2020 年 11 月 6 日下午 5 点”

但不知何故,下午 5 点正在转换为上午 12 点。下面是我的代码

var dateFormat = $(this).data("date-format") || "MM/DD/YYYY hh A";
  
var currentDate = $(this).val().length > 1 ? moment($(this).val(), dateFormat)._d : null;
$(this).attr("autocomplete", "off");

var dates = $(this).daterangepicker(
  {
    singleDatePicker: true,
    locale: {
      format: dateFormat
    }
  },
  function(start, end, label)
  {
    $(this).val(start.format(dateFormat));
  }
);
if(currentDate && currentDate != 'Invalid Date'){
  dates.daterangepicker( { startDate: currentDate } );
}
dates.daterangepicker({ singleDatePicker: true, showDropdowns: true, autoApply: false, timePicker: true, minDate: Abc.getAdminMinDateTime(), locale: { format: dateFormat} });

日期范围选择器版本 3.0.5 Moment.js 2.18.1

【问题讨论】:

  • 看起来像是时区问题
  • @AbishekKumar 这不是时区问题
  • 如果你想要一个日期字符串,你应该使用format。相反,您使用的是_d,它在 moment.js 文档中的任何地方都没有记录,并且由于它是在库内部使用并且可能会发生变化,因此可能会导致错误的结果。

标签: javascript jquery momentjs daterangepicker


【解决方案1】:

我终于找到了解决方案。它不起作用的原因是 $(this).daterangepicker 当我们调用 daterangepicker 时它会创建一个新对象

var dateFormat = $(this).data("date-format") || "MM/DD/YYYY hh A";
  
var currentDate = $(this).val().length > 1 ? moment($(this).val(), dateFormat)._d : null;


$(this).attr("autocomplete", "off");
  var date_options = {
    singleDatePicker: true,
    showDropdowns: true,
    autoApply: false,
    timePicker: true,
    minDate: Abc.getAdminMinDateTime(),
    locale: { format: dateFormat }
  }
  if(currentDate && currentDate != 'Invalid Date'){
    date_options["startDate"] = currentDate;
  }
  var dates = $(this).daterangepicker(date_options, function(start, end, label){
    $(this).val(start.format(dateFormat));
  });

【讨论】:

    猜你喜欢
    • 2011-10-14
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2016-03-18
    • 1970-01-01
    • 1970-01-01
    • 2012-01-03
    相关资源
    最近更新 更多