[英]JS minus 1 day from date input
无需担心时区或其他任何事情,从 JS 中我的表单上的 input=date 到 -1 天的最快和最好的方法是什么,隐蔽为字符串为 YYYY-MM-DD 以便它可以被解析并用于发布到 API ETC?
从我的 date_to_selector.val() 中可以看到,我的 date_to var 打印字符串“YYYY-MM-DD” - 我需要在新变量中从该字符串中减去 1 天
这是来自日期输入“Date To”的代码:
<input type="date" name="date_to" />
var date_to_selector = $(this).parent().find("input[name=date_to]");
var date_to = date_to_selector.val();
我已经对此进行了研究,许多人建议 moment.JS 或 toISOString 但我不想担心时区等。
您可以获取输入的valueAsDate
属性,然后将其日期设置为所选日期减去 1 的日期:
$('input[type="date"]').change(function(){ const date = $(this).prop('valueAsDate') date.setDate(date.getDate() - 1) const res = date.toLocaleDateString('en-US', {year: 'numeric', month: '2-digit', day: '2-digit'}).split('/').join('-'); console.log(res) })
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script> <input type="date" name="date_to" />
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.