2012-01-17 2 views
1

У меня есть поле, которое должно принимать ввод в формате HH: MM (это может быть 00:01, 01:19, 25:00, 99:34, 123:12)Проверьте значение поля в формате ЧЧ: ММ

Так перед отправкой формы Мне нужно проверить, находится ли значение в любом из вышеперечисленных форматов, иначе выведите сообщение об ошибке.

Поле:

<input type="text" value="" name="totalDuration" id="total_duration" class="" /> 

код проверки здесь идет

function validate(){ 
    var totalDuration = $("#total_duration").val(); 

    // Rest of the code which checks value is in given format 
} 

ответ

3

Вы могли бы сделать;

function validate(){ 
    var totalDuration = $("#total_duration").val(); 

    return /^\d{2}:\d{2}$/.test(totalDuration); 
} 

Это регулярное выражение, которое проверяет наличие двух цифр, а затем «:», а затем еще две цифры. Это может быть более точным (т.е. проверка < 24 часов и < 60 минут)

Если вы хотите, чтобы проверить по крайней мере 2 цифры часа (принимать 123: 12 в вашем примере), попробуйте регулярное выражение /^\d{2,}:\d{2}$/

Проверить на наличие двух или трехчасовые цифры, сделать; /^\d{2,3}:\d{2}$/

+0

Как вы можете сделать его более точным в элегантном стиле? – Lipis

+0

В моем случае это могут быть цифры до: 123: 47 – Hussy

+0

@ Lipis: Я не слишком уверен в * элегантном * решении; возможно, кто-то более уверенный в регулярных выражениях может обмануть это :). – Matt

Смежные вопросы