Javascript 结束时间应大于开始时间
我有两个时间选择器,一个用于开始时间,另一个用于结束时间,结束时间必须始终大于开始时间。我正在使用eonasdan datetimepicker。如果开始日期大于结束日期,则不允许,或者我们需要获取pop。请帮我解决这个问题 以下是我到目前为止所做的 $'starttime,endtime'。日期时间选择器{ 格式:“HH:mm” }; var start_time=$'start_time'.val; var end_time=$'end_time'.val; 如果Date.parsestart_time>Date.parseend_time{ 警报“开始时间应更小”; } 开始时间 结束时间Javascript 结束时间应大于开始时间,javascript,jquery,Javascript,Jquery,我有两个时间选择器,一个用于开始时间,另一个用于结束时间,结束时间必须始终大于开始时间。我正在使用eonasdan datetimepicker。如果开始日期大于结束日期,则不允许,或者我们需要获取pop。请帮我解决这个问题 以下是我到目前为止所做的 $'starttime,endtime'。日期时间选择器{ 格式:“HH:mm” }; var start_time=$'start_time'.val; var end_time=$'end_time'.val; 如果Date.parsesta
在“结束时间”文本框中禁用过去日期而不是开始日期。类似这样的内容,请替换html代码中的文本框id
$( "#startDate" ).datepicker({
onSelect: function(dateText, inst) {
$('#endDate').datepicker('option', 'minDate', $(this).val());
},
minDate: 0
});
$( "#endDate" ).datepicker({
onSelect: function(dateText, inst) {
if($( "#startDate" ).val() == ''){
$( "#endDate" ).val('');
}
},
})
您可能需要在每个startTime.change事件上更新endTime.minDate。 试着以我为例: 函数timepickertrl${ var startTime=$'startTime'.datetimepicker{ 格式:“HH:mm” }; var endTime=$'endTime'.datetimepicker{ 格式:“HH:mm”, minDate:startTime.dataDateTimePicker.date }; 功能设定值{ 返回结束时间 .dataDateTimePicker.minDate startTime.dataDateTimePicker.date ; } var-bound=false; 函数bindMinEndTimeToStartTime{ 返回边界| |开始时间在'dp.change',setMinDate; } endTime.on'dp.change',=>{ bindMinEndTimeToStartTime; 绑定=真; 刚毛; }; } $document.readyTimePickerCtrl; 开始时间 结束时间
我用计时器做了些事情 试试这个HTML代码
<div class="col-md-12">
<div class="row">
<div class="col-md-6">
<div class="form-group bootstrap-timepicker">
<label class="control-label">Start Time</label>
<input id="start" name="start" ng-model="start" type="text" required="required" class="form-control start" />
</div>
</div>
<div class="col-md-6">
<div class="form-group bootstrap-timepicker">
<label class="control-label">End Time</label>
<input id="end" name="end" ng-model="end" type="text" required="required" class="form-control end" />
</div>
</div>
</div>
</div>
$'.start、.end'.timepicker{
输入:假,
会议记录:1,
};
$end,start.changefunction{
变量时间=$start.val;
var hours=Numbertime.match/^\d+/[1];
var minutes=Numbertime.match/:\d+/[1];
var AMPM=time.match/\s.*$/[1];
ifAMPM==PM&&hours使用AM和PM设置时间验证
var startTime = $('.StartTime').datetimepicker({
"allowInputToggle": true,
"showClose": true,
"showClear": true,
"showTodayButton": true,
"format": ' hh:mm A',
"useCurrent": false
})
var endTime = $('.EndTime').datetimepicker({
"allowInputToggle": true,
"showClose": true,
"showClear": true,
"showTodayButton": true,
"format": ' hh:mm A',
"useCurrent": false })
.on("dp.change", function (e) {
minDate: startTime.data("DateTimePicker").date()
bindMinEndTimeToStartTime(startTime);
bound = true;
setMinDate(endTime,startTime);
});
function setMinDate(endTime,startTime) {
return
endTime.data("DateTimePicker").minDate(startTime.data("DateTimePicker").date()
);
}
function bindMinEndTimeToStartTime(startTime) {
var bound = false;
return bound || startTime.on('dp.change', setMinDate);
}
你的问题是什么?看起来你有一些代码试图实现这一点。有什么问题吗?你忘了在你的应用程序中包含jQuery和你的datepicker插件。你给了开始日期和结束日期相同的id,所以你更改了结束日期idHi,谢谢你的回答!!!@Hitmands这很好,但我们不应该错过时间默认情况下,它应该通过单击加载项来显示时间,这是通过删除date属性来实现的,但是通过单击加载项,我得到的日期同时显示在开始时间和结束时间中,而应该显示在特定的输入字段中,即开始时间和结束时间。您能帮我解决这个问题吗?谢谢ted我的例子,如果足够的话,请接受我的回答。非常感谢你的帮助,但唯一的问题是当我更新开始时间时,结束时间也随之更新,而当我开始更新开始时间时,结束时间字段应该被清除,当我们点击它的插件时,更新的时间应该被输入,请帮我把这个拿出来谢谢
<div class="col-md-12">
<div class="row">
<div class="col-md-6">
<div class="form-group bootstrap-timepicker">
<label class="control-label">Start Time</label>
<input id="start" name="start" ng-model="start" type="text" required="required" class="form-control start" />
</div>
</div>
<div class="col-md-6">
<div class="form-group bootstrap-timepicker">
<label class="control-label">End Time</label>
<input id="end" name="end" ng-model="end" type="text" required="required" class="form-control end" />
</div>
</div>
</div>
</div>
var startTime = $('.StartTime').datetimepicker({
"allowInputToggle": true,
"showClose": true,
"showClear": true,
"showTodayButton": true,
"format": ' hh:mm A',
"useCurrent": false
})
var endTime = $('.EndTime').datetimepicker({
"allowInputToggle": true,
"showClose": true,
"showClear": true,
"showTodayButton": true,
"format": ' hh:mm A',
"useCurrent": false })
.on("dp.change", function (e) {
minDate: startTime.data("DateTimePicker").date()
bindMinEndTimeToStartTime(startTime);
bound = true;
setMinDate(endTime,startTime);
});
function setMinDate(endTime,startTime) {
return
endTime.data("DateTimePicker").minDate(startTime.data("DateTimePicker").date()
);
}
function bindMinEndTimeToStartTime(startTime) {
var bound = false;
return bound || startTime.on('dp.change', setMinDate);
}