Ввод времени по маске
Здравствуйте! Проблема такая:
Есть поле для ввода времени, на него при помощи плагина jquery.maskedinput-1.2.2 установила маску 00:00. Маска работает! Проблема в том что если вводишь 89:69 то ошибки естесно нет, а надо бы!!! Код такой :
jQuery(function($) {
$('#eITDbegintime').mask('99:99');
$('#eITDendtime').mask('99:99');
});
как сделать так чтобы если число не подходит оно не вводилось, в общем как правильно маску то задать? :-) |
Можно пофиксить так, не залезая в код плагина:
(function () {
var mask = $.fn.mask;
$.fn.mask = function ( a ) {
var t = a.split( ":" );
if ( +t[0] > 24 || +t[1] > 60 ) {
throw "Некорректное время";
} else {
return mask( a );
}
};
})();
|
ну в принципе просто, только не пойму как потом маску к полю привязать то???
|
Так же.
Цитата:
|
так не работает( маска отображается по прежнему и по прежнему можно вводить 99:99. На форме много полей которые нужно заполнять, и можно сделать проверку при сохранении к примеру, но хотелось бы чтобы сразу
|
exec,
хотелось бы взглянуть на рабочий пример ? skalka, пока могу предложить только слегка сузить диапазон
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<title></title>
<script type="text/javascript" src="http://ajax.googleapis.com/ajax/libs/jquery/1.3.2/jquery.min.js"></script>
<script type="text/javascript" src="http://jquery-joshbush.googlecode.com/files/jquery.maskedinput-1.2.2.min.js" ></script>
<script language="JavaScript" type="text/javascript">
jQuery(function($) {
$.mask.definitions['H']='[012]';
$.mask.definitions['M']='[012345]';
$('#eITDbegintime').mask('H9:M9');
$('#eITDendtime').mask('H9:M9');
});
</script>
</head>
<body>
<input id="eITDbegintime" type="text" />
<input id="eITDendtime" type="text" />
</body>
</html>
|
ВО!!!! То что надо, спасибо)))
|
огромное спасибо
|
рони,
Ваш пример хорош, но в нем можно ввести 29:59 и 24:59, как можно ограничить?) |
Цитата:
http://www.moskva.fm/what/ |
| Часовой пояс GMT +3, время: 17:54. |