Angular JS 24小时时间输入验证

时间:2016-12-05 22:37:48

标签: javascript jquery angularjs html5

我在AngularJS中使用HTML5,我有一个输入字段,我允许用户以24小时格式输入时间,例如:(13:00)。当用户点击提交按钮时,我需要验证输入是否以上述格式输入。如果不是我想抛出一条错误消息,说明它的无效时间。问题是,当我尝试使用普通的javascript在ng-click它无法正常工作。请建议我这样做的好方法。我应该怎样做角度方式。

这是我的javascript代码

    function validateTime(obj)
{
var timeValue = obj.value;
if(timeValue == "" || timeValue.indexOf(":")<0)
{
    alert("Invalid Time format");
    return false;
}
else
{
    var sHours = timeValue.split(':')[0];
    var sMinutes = timeValue.split(':')[1];

    if(sHours == "" || isNaN(sHours) || parseInt(sHours)>23)
    {
        alert("Invalid Time format");
        return false;
    }
    else if(parseInt(sHours) == 0)
        sHours = "00";
    else if (sHours <10)
        sHours = "0"+sHours;

    if(sMinutes == "" || isNaN(sMinutes) || parseInt(sMinutes)>59)
    {
        alert("Invalid Time format");
        return false;
    }
    else if(parseInt(sMinutes) == 0)
        sMinutes = "00";
    else if (sMinutes <10)
        sMinutes = "0"+sMinutes;    

    obj.value = sHours + ":" + sMinutes;        
}

return true;    
}

0 个答案:

没有答案