如果选择了错误的日期和/或时间,则下面的代码假设显示一个警告框。
我遇到的问题是,如果我选择25/11/2015并选择11:00它显示“请更改日期或时间”。如果我然后选择25/11/2015并选择21:00它会显示“那很好”。
该功能忽略了日期,只是检查时间。
如果用户选择已经消失的时间或者今天之前的日期,则应显示消息“请更改日期或时间”。
我希望我能帮助解决这个问题。提前谢谢。
function myFunction() {
var today = new Date();
var select_text = document.getElementById("datepicker-leave").value;
var select_date = new Date(select_text);
var select_time = document.getElementById("leavedrop").value;
var curr_time = today.getHours() + 1;
if ((select_date.getTime() <= today.getTime()) && select_time < curr_time) {
alert("Please change Date or Time")
} else {
alert("That's Fine")
}
}
<script>
$(function() { //datepickers
$( "#datepicker-leave).datepicker({
dateFormat: 'd-M-yy'});
});
</script>
<input type="text" id="datepicker-leave">
<select id="leavedrop">
<option value="0">00:00</option>
<option value="1">01:00</option>
<option value="2">02:00</option>
<option value="3">03:00</option>
<option value="4">04:00</option>
<option value="5">05:00</option>
<option value="6">06:00</option>
<option value="7">07:00</option>
<option value="8">08:00</option>
<option value="9">09:00</option>
<option value="10">10:00</option>
<option value="11">11:00</option>
<option value="12">12:00</option>
<option value="13">13:00</option>
<option value="14">14:00</option>
<option value="15">15:00</option>
<option value="16">16:00</option>
<option value="17">17:00</option>
<option value="18">18:00</option>
<option value="19">19:00</option>
<option value="20">20:00</option>
<option value="21">21:00</option>
<option value="22">22:00</option>
<option value="24">23:00</option>
</select>
<input type="button" value="Submit" onClick="myFunction()" />
答案 0 :(得分:1)
尝试以下日期结构
**$( "#date" ).datepicker({ dateFormat: 'dd/mm/yy' });**
然后试试这个
$(function() {
$( "#date" ).datepicker({
dateFormat: 'd MM, yy',
onSelect: function(dateText, inst) {
var stop = dateText.indexOf(',');
alert( dateText.substring(0, stop));
}
});
});
在选择旁边,您会触发警报。
我希望这应该有所帮助
由于
答案 1 :(得分:0)
它不起作用,因为您没有以适当的格式输入日期
您需要使用(YYYY-MM-DD)
格式才能使其正常工作
您的示例将日期设为2015-11-25
答案 2 :(得分:0)