我有一个绑定到日期选择器的文本框:
<!-- editExamScheduleModal -->
<div class="form-group">
<label class="col-md-4 control-label" for="textExamDate">Exam Date</label>
<div class="col-md-4">
<input id="textExamDate" name="textExamDate" type="text" class="form-control input-md">
</div>
</div>
此Div显示为弹出窗口,将值分配给文本框的功能如下:
function ShowPopup(examDateToEdit) {
$('#textExamDate').val(examDateToEdit);
$('#textExamDate').datepicker({ minDate: 0 });
$('#editExamScheduleModal').modal('show');
var expectedExamDate = new Date();
var numberOfDaysToAdd = 1;
expectedExamDate.setDate(expectedExamDate.getDate() + numberOfDaysToAdd);
$('#textExamDate').datepicker("setDate", expectedExamDate);
}
在上面的函数中,我试图设置DatePicker来选择当天的第二天或者在examDateToEdit中传递的任何日期。 如果函数没有任何内容就可以了,日期选择器将默认为当前日期。
发生了两件事:
因此,如果今天的日期是2016年1月21日,则会将01/22/2016放在文本框中。
此文本框中的值是可选的,这意味着用户可以将其留空。 但是在我上面显示的实现中,它会有一个值,当用户点击Save(这里没有显示)时,它们会无意中将值发送回服务器。
那么我该怎样做才能让#1发生?
提前致谢。
问候。
答案 0 :(得分:0)
这将由以下代码修复
<script>
function ShowPopup(examDateToEdit) {
if ((typeof examDateToEdit != "undefined") && examDateToEdit!="") {
$('#editExamScheduleModal').modal('show');
var numberOfDaysToAdd = 0;
}
else {
var examDateToEdit = new Date();
var numberOfDaysToAdd = 1;
}
examDateToEdit.setDate(examDateToEdit.getDate() + numberOfDaysToAdd);
$('#textExamDate').datepicker("setDate", examDateToEdit);
}
</script>
答案 1 :(得分:0)
有一个智能解决方案,我在datepicker函数调用后使用$('#textboxid').val('');
会使文本框为空。