我有这段代码可以更改日期格式。我想知道如何使ISO格式成为默认格式,以便每次有人选择一个日期时,它都将以ISO8601 yy-mm-dd
格式进行格式化,而无需再次选择。这是因为,如果我选择其他选项然后返回上一个选项,则仅采用格式。
<script>
$(function() {
$("#datepicker").datepicker();
$("#format").on("change", function() {
$("#datepicker").datepicker("option", "dateFormat", $(this).val());
});
});
</script>
<p>
Date: <input type="text" id="datepicker" size="30">
</p>
<p>
Format options:<br>
<select id="format">
<option value="yy-mm-dd" selected>ISO 8601 - yy-mm-dd</option>
<option value="d M, y">Short - d M, y</option>
</select>
答案 0 :(得分:1)
要执行的操作,请根据select的默认值在初始化选项中设置dateFormat
:
$(function() {
let $datepicker = $("#datepicker");
let $format = $('#format');
$datepicker.datepicker({
dateFormat: $format.val()
});
$format.on("change", function() {
$datepicker.datepicker("option", "dateFormat", this.value);
});
});
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>
<script src="https://cdnjs.cloudflare.com/ajax/libs/jqueryui/1.12.1/jquery-ui.min.js"></script>
<link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/jqueryui/1.12.1/jquery-ui.min.css" />
<p>
Date: <input type="text" id="datepicker" size="30">
</p>
<p>
Format options:<br>
<select id="format">
<option value="yy-mm-dd" selected>ISO 8601 - yy-mm-dd</option>
<option value="d M, y">Short - d M, y</option>
</select>
</p>