使用javascript验证开始和结束时间

时间:2014-04-30 05:57:09

标签: javascript

我有两个date time pickers,我使用框架,我可以选择date and time格式"22-04-2014 07:30PM"

现在我需要验证开始和结束时间,以便它允许有效的时间和时间。请指导我使用javascript执行此操作。

如果我选择开始时间为下午12:30,结束时间为下午6:30,那么它是有效的,但如果我选择开始时间为"上午10:00和#34;结束时间为"上午8:00和#34;,它无效。

2 个答案:

答案 0 :(得分:0)

Working Fiddle

不使用插件 试试这个 : 检查按钮的事件如下:

$('input.check').click(function(e){
    var startd=$(this).parent('div').find('input:eq(0)').val()
    var endd=$(this).parent('div').find('input:eq(1)').val()
    alert(convertDate2JS(endd)>convertDate2JS(startd))
})

知道:

   function convert2JSTime(time){
 //No space between AM|Pm and Time 
 time=time.toLowerCase();
var hours = parseInt(time.substr(0, 2));
    if(time.indexOf('am') != -1 && hours == 12) {
        time = time.replace('12', '0');
    }
    if(time.indexOf('pm')  != -1 && hours < 12) {
        time = time.replace(hours, (parseInt(hours) + 12));
    }
    time=time.replace(/(am|pm)/, '');
    if(time.split(':')[0].length===3){
      time=time.substr(1)
    }
    return time;}

转换整个日期=日期+时间:

function convertDate2JS(datem){
    return datem.split(' ')[0]+' '+convert2JSTime(datem.split(' ')[1])
}

然后

   if (convertDate2JS(endDate)>convertDate2JS(strartDate)){
       return true;
   } else{
       return false;
   }

更新:

http://jsfiddle.net/abdennour/stUbT/

答案 1 :(得分:0)

Working Fiddle

使用this plugin我能够进行直接比较

jQuery代码

$('#btnCompare').click(function () {
    var from = $('#txtFrom').val();
    var to = $('#txtTo').val();
    if(from > to){
        $('#Msg').text('To date must be greater than from').css('color','red');
    } else{
        $('#Msg').text('Valid').css('color','green');
    }
});