【发布时间】:2016-07-27 10:54:58
【问题描述】:
从 datepicker 转换为 moment.js 的问题在 SO 中出现了很多次。可悲的是,在尝试了我在这里和在线找到的各种方法提出的大约 10 种不同的解决方案之后,我仍然无法以我想要的方式成功地从 datepicker 转换为 moment.js。
我所做的是在 jQuery datepicker 中获取选定的日期,在这种情况下,console.log 最后并获取“27-7-2016”,例如,作为 datepicker 日期。
$( "#datepicker" ).datepicker({
dateFormat: "dd-mm-yy",
maxDate: 6,
minDate: 0,
onSelect: function(dateText){
startDate = dateText;
selectedTemp = dateText.split("-");
gap = moment(selectedTemp[2]+"-"+selectedTemp[1]+"-"+selectedTemp[0]).fromNow();'
console.log(startDate);
}
});
在gap 变量中,我有一个moment 对象,它给了我类似“10 小时内”或“2 天内”的信息。我稍后将该字符串解析为一个数字,以了解所选日期将是多少天:
gap = parseInt(gap);
例如,我想将 datepicker 中的日期增加 2 天,即使用我发现的 2 天间隔从“27-7-2016”变为“29-7-2016”。
到目前为止,这总是导致我得到一个完整的 moment.js 对象,或者一些错误,例如无效,或者 .add() 方法不起作用等等。
我也想获取结果“29-7-2016”并将其转换为“2016-7-29”,但由于它不是字符串,所以我找不到这样做的方法,并且总是遇到格式问题。
谢谢。
【问题讨论】:
标签: jquery date datepicker momentjs