单击日期选择器中的日期后,我试图重置输入的值,我的目标是单击日期后在数组中添加一个日期,而一旦单击日期后发生了什么情况多次,它仍然保留输入的先前值。
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">
答案 0 :(得分:1)
您可以使用onSelect上的日期选择器轻松访问事件:
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">
答案 1 :(得分:0)
$('#inputMultiDate').val('')
在jQuery中,“ val”既是get函数,也是set函数。您可以使用val('')设置输入。
答案 2 :(得分:0)
尝试每次日期更改时调用新的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);
});;
});