我在点击日期选择器中的日期时尝试重置输入的值,我的目标是在点击日期后在数组中添加一个日期,一旦我点击多次日期,会发生什么,它仍然保留输入的先前值。
var date = new Date();
var days = [];
$(document).ready(function(){
$("#inputMultiDate").datepicker({
autoclose: true,
todayHighlight: true,
multidate: true,
format: 'dd-mm-yyyy'
}).on("changeDate", function(){
dates = $('#inputMultiDate').val().split(',');
days.push(dates);
$('#inputMultiDate').attr('value', '');
console.log(days);
});;
});
<input type="text" id="inputMultiDate" class="form-control" placeholder="Pick the multiple dates">
您可以使用onSelect上的datepicers轻松访问该事件:
var date = new Date();
var days = [];
$(document).ready(function() {
$("#inputMultiDate").datepicker({
autoclose: true,
todayHighlight: true,
multidate: true,
format: 'dd-mm-yyyy',
onSelect: function(dateText) {
dates = $('#inputMultiDate').val().split(',');
days.push(dates);
$('#inputMultiDate').attr('value', '');
console.log(days);
let value = $("#inputMultiDate").datepicker("getDate");
console.log(value);
}
});
});
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>
<link rel="stylesheet" href="//code.jquery.com/ui/1.12.1/themes/base/jquery-ui.css">
<script src="https://code.jquery.com/ui/1.12.1/jquery-ui.js"></script>
<input type="text" id="inputMultiDate" class="form-control" placeholder="Pick the multiple dates">
$('#inputMultiDate').val('')
在jQuery中“val”是一个get函数,也是一个set函数。您可以使用val('')设置输入。
每次日期更改时尝试调用新的Date()函数。目前,您在页面加载时有一个日期。
var date = new Date();
var days = [];
$(document).ready(function(){
$("#inputMultiDate").datepicker({
autoclose: true,
todayHighlight: true,
multidate: true,
format: 'dd-mm-yyyy'
}).on("changeDate", function(){
date = new Date();
dates = $('#inputMultiDate').val().split(',');
days.push(dates);
$('#inputMultiDate').attr('value', '');
console.log(days);
});;
});