我有一个日期字段,我按以下格式调用日期选择器:
$(function() {
$('.dob').datepicker({
dateFormat: 'dd/MM/yyyy',
});
});
当用户选择日期时,我得到,比如说,
02 March 2002
我只想以上述格式显示此日期,但另存为 dd/mm/yyyy 即 .
02/03/2002
如何将我的字符串 dd/MM/yyyy 转换为字符串 dd/mm/yyyy? 尝试使用 simpledateformat,也通过提供语言环境参数,这些都不起作用。
首先,要在 jQuery DatePicker 小部件中使用 4 位数字年份格式,您不应使用“yyyy”。是“哟”。请参阅文档。
您可以使用 DatePicker 的
getDate方法获取一个
Date
实例。然后您可以使用适当的语言环境参数调用本机 toLocaleDateString
方法以获得所需的格式。例如,“en-UK”将产生 dd/mm/yyyy 格式:
$(function() {
$( "#datepicker" ).datepicker({
dateFormat: 'dd/M/yy',
}).change(function () {
const dt = $(this).datepicker("getDate");
const ddmmyyyy = dt.toLocaleDateString("en-UK");
console.log(ddmmyyyy);
});
});
<link rel="stylesheet" href="https://code.jquery.com/ui/1.13.2/themes/base/jquery-ui.css">
<script src="https://code.jquery.com/jquery-3.6.0.js"></script>
<script src="https://code.jquery.com/ui/1.13.2/jquery-ui.js"></script>
Date: <input type="text" id="datepicker">
如果你想将日期显示为
02 March 2002
,你应该将dateFormat更改为以下内容:
dateFormat: 'dd MM yy'
jQuery DatePicker 的所有格式化选项都可以在here.
中找到不建议将日期保存为字符串,而是保存为数据库支持的对应日期对象。如果您仍然希望获得日期为
dd/mm/yyyy
,可以这样做:
let dateAsString;
$(function() {
$('.dob').datepicker({
dateFormat: 'dd MM yy',
onSelect: function() {
let dateObj = $(this).datepicker('getDate') // Retrieves the selected date
dateAsString = dateObj.toLocaleString("en-UK")
}
});
});
dateAsString
将是您要查找的字符串。