Javascript 如何重置jquery日期选择器onkeyup?
我的jquery日期选择器工作正常,但是我的问题是,如果从文本框中删除其中一个日期选择器,则日期计算框(CalcDate1)中的值应该消失。我的代码如下Javascript 如何重置jquery日期选择器onkeyup?,javascript,jquery,asp.net-mvc,datepicker,Javascript,Jquery,Asp.net Mvc,Datepicker,我的jquery日期选择器工作正常,但是我的问题是,如果从文本框中删除其中一个日期选择器,则日期计算框(CalcDate1)中的值应该消失。我的代码如下 <script type="text/javascript"> $(function () { $('#datepicker7').datepicker({ showOnFocus: false, showTrigger: '#calImg',
<script type="text/javascript">
$(function () {
$('#datepicker7').datepicker({
showOnFocus: false,
showTrigger: '#calImg',
beforeShowDay: $.datepicker.noWeekends,
pickerClass: 'noPrevNext',
dateFormat: "dd-mm-yy", changeMonth: true, changeYear: true,
onClose: function (selectedDate) { $("#datepicker8").datepicker("option", "minDate", selectedDate) },
onSelect: function (dateStr) {
var min = $(this).datepicker('getDate');
$('#datepicker8').datepicker('option', "calculateWeek", min);
datepicked();
}
});
$('#datepicker8').datepicker({
showOnFocus: false,
showTrigger: '#calImg',
beforeShowDay: $.datepicker.noWeekends,
pickerClass: 'noPrevNext',
dateFormat: "dd-mm-yy", changeMonth: true, changeYear: true,
onSelect: function (dateStr) {
var max = $(this).datepicker('getDate');
$('#datepicker7').datepicker('option', "calculateWeek", max);
datepicked();
}
});
});
var datepicked = function () {
var from = $('#datepicker7');
var to = $('#datepicker8');
var nights = $('#CalcDate1');
var startDate = from.datepicker('getDate');
startDate.setDate(startDate.getDate() + 1);
var endDate = to.datepicker('getDate')
// Validate input
if (endDate && startDate) {
// Calculate days between dates
var millisecondsPerDay = 86400 * 1000; // Day in milliseconds
startDate.setHours(0, 0, 0, 1); // Start just after midnight
endDate.setHours(23, 59, 59, 999); // End just before midnight
var diff = endDate - startDate; // Milliseconds between datetime objects
var days = Math.ceil(diff / millisecondsPerDay);
// Subtract two weekend days for every week in between
var weeks = Math.floor(days / 7);
var days = days - (weeks * 2);
// Handle special cases
var startDay = startDate.getDay();
var endDay = endDate.getDay();
// Remove weekend not previously removed.
if (startDay - endDay > 1)
var days = days - 2;
// Remove start day if span starts on Sunday but ends before Saturday
if (startDay == 0 && endDay != 6)
var days = days - 1
// Remove end day if span ends on Saturday but starts after Sunday
if (endDay == 6 && startDay != 0)
var days = days - 1
nights.val(days);
}
}
</script>
我的html助手是
<div class="form-group">
@Html.LabelFor(model => model.DateToAdvisors, "Date To Advisors", new { @class = "control-label col-md-5" })
<div class="col-md-offset-0">
@Html.TextBoxFor(model => model.DateToAdvisors, new { @class = "datepicker7", id = "datepicker7" })
@Html.ValidationMessageFor(model => model.DateToAdvisors)
</div>
</div>
<div class="form-group" style="padding-top:75px">
@Html.LabelFor(model => model.ReplyFormAdvisors, "Reply From Advisors", new { @class = "control-label col-md-5" })
<div class="col-md-offset-0">
@Html.TextBoxFor(model => model.ReplyFormAdvisors, new { @class = "datepicker8", id = "datepicker8" })
@Html.ValidationMessageFor(model => model.ReplyFormAdvisors)
</div>
</div>
<div class="form-group" style="padding-top:175px">
@Html.LabelFor(model => model.CalcDate1, "Date Calculated", new { @class = "control-label col-md-5" })
<div class="col-md-offset-0">
@Html.TextBoxFor(model => model.CalcDate1)
@Html.ValidationMessageFor(model => model.CalcDate1)
</div>
</div>
@LabelFor(model=>model.DateToAdvisors,“DateToAdvisors”,新的{@class=“controllabel col-md-5”})
@Html.TextBoxFor(model=>model.DateToAdvisors,新的{@class=“datepicker7”,id=“datepicker7”})
@Html.ValidationMessageFor(model=>model.DateToAdvisors)
@LabelFor(model=>model.ReplyFormAdvisors,“来自顾问的回复”,新的{@class=“controllabel col-md-5”})
@Html.TextBoxFor(model=>model.ReplyFormAdvisors,新的{@class=“datepicker8”,id=“datepicker8”})
@Html.ValidationMessageFor(model=>model.ReplyFormAdvisors)
@LabelFor(model=>model.CalcDate1,“计算日期”,新的{@class=“controllabel col-md-5”})
@Html.TextBoxFor(model=>model.CalcDate1)
@Html.ValidationMessageFor(model=>model.CalcDate1)
不确定$(“#日期选择器8”).val(“”
帮助!尝试一下,因为您没有解除DP的绑定。@LShetty该放在哪里?替换$.datepicker.\u clearDate(此)代码>用它。谢谢,我试过了,但没用。行$(“#datepicker8”).val(“”)使一个日期消失,如果另一个日期消失,但即使删除其中一个日期,总数仍然保持不变。感谢您的帮助,尽管我稍微修改了您的代码以使其适应我的代码,因此现在它的代码为$(“#CalcDate1”).val(“”);这正是我所需要的,谢谢你帮助我实现这一目标
<div class="form-group">
@Html.LabelFor(model => model.DateToAdvisors, "Date To Advisors", new { @class = "control-label col-md-5" })
<div class="col-md-offset-0">
@Html.TextBoxFor(model => model.DateToAdvisors, new { @class = "datepicker7", id = "datepicker7" })
@Html.ValidationMessageFor(model => model.DateToAdvisors)
</div>
</div>
<div class="form-group" style="padding-top:75px">
@Html.LabelFor(model => model.ReplyFormAdvisors, "Reply From Advisors", new { @class = "control-label col-md-5" })
<div class="col-md-offset-0">
@Html.TextBoxFor(model => model.ReplyFormAdvisors, new { @class = "datepicker8", id = "datepicker8" })
@Html.ValidationMessageFor(model => model.ReplyFormAdvisors)
</div>
</div>
<div class="form-group" style="padding-top:175px">
@Html.LabelFor(model => model.CalcDate1, "Date Calculated", new { @class = "control-label col-md-5" })
<div class="col-md-offset-0">
@Html.TextBoxFor(model => model.CalcDate1)
@Html.ValidationMessageFor(model => model.CalcDate1)
</div>
</div>