![]() |
|
||||||||||
|
|||||
|
Регистрация: Dec 2007
Сообщений: 27
|
Имеется строка ввода. Вводят всякие гадости, пытаюсь оставлять только числа и символ точка (только одну точку, первую).
Не понимаю принцип работы регулярных выражений, путаюсь. Нашел в сети вариант, который оставляет только числа: Если кто-то делал такое, помогите пожалуйста, с меня пиво, если будете у меня в городе (Баку) ![]() |
|
|||||
|
моё мнение: плохая идея.
Ненужно реплейсить то, что ввёл пользователь и тем более по события keyup. Лучше будет лишь делать проверку на валидность данных и уведомлять его собщением или красной рамкой/пиктограмкой, что он не то вписывает. <script type="text/javascript">
var pat = new RegExp('^([0-9]+\.)?[0-9]+$');
function check(el){
if(pat.test( el.value)){
el.style.cssText = 'border:1px solid green';
}else{
el.style.cssText = 'border:1px solid red';
}
}
</script>
<input type="text" value="" onkeyup="check(this);" onblur="check(this);" />
Последний раз редактировалось Mnilionic; 13.05.2009 в 22:18. |
![]() |
![]() |
Часовой пояс GMT +4, время: 03:56. |
|
|
« Предыдущая тема | Следующая тема » |
|
|