[ Поиск ] - [ Пользователи ] - [ Календарь ]
Полная Версия: input text ввод только цифр и точки или запятой
Skesh
Господа помогите модифицировать скрипт:

<script>
function proverka(input) {
ch = input.value.replace(/[^\d,]/g, ''); //разрешаем вводить только числа и запятую
pos = ch.indexOf(','); // проверяем, есть ли в строке запятая
if(pos != -1){ // если запятая есть
if((ch.length-pos)>6){ // проверяем, сколько знаков после запятой, если больше 1го то
ch = ch.slice(0, -1); // удаляем лишнее
}
}

input.value = ch; // приписываем в инпут новое значение
};
</
script>
<
input type="text" onkeyup="return proverka(this);">


Он пропускает только цифры, запятые, и пять цифр после запятой, а нужно: цифры и одну точку или запятую, ВАЖНО! Только одну точку или запятую, и только что то одно, или точку или запятую. Благодарю.

_____________
*пускает слюну, глядя на код* :)
Skesh

function proverka(input) {
ch = input.value.replace(/[^\d,.]/g, ''); //разрешаем вводить только числа и запятую
pos = ch.indexOf(','); // проверяем, есть ли в строке запятая
if(pos != -1){ // если запятая есть
if((ch.length-pos)>6){ // проверяем, сколько знаков после запятой, если больше 5 то
ch = ch.slice(0, -1); // удаляем лишнее
}
}

pos = ch.indexOf('.'); // проверяем, есть ли в строке точка
if(pos != -1){ // если запятая есть
if((ch.length-pos)>6){ // проверяем, сколько знаков после точки если больше 5 то
ch = ch.slice(0, -1); // удаляем лишнее
}
}

input.value = ch; // приписываем в инпут новое значение
};

Кое как разобрался, теперь пропускает еще и точку и 5 знаков после нее, но как сделать что бы пропускало либо точку либо запятую? Помогите плиз... Мне нужно будет три дня потратить чтобы самому найти ответ...

_____________
*пускает слюну, глядя на код* :)
killer8080
<input type="text" onkeyup="validate(this)" />
<
script>

function validate(inp) {
inp.value = inp.value.replace(/[^\d,.]*/g, '')
.
replace(/([,.])[,.]+/g, '$1')
.
replace(/^[^\d]*(\d+([.,]\d{0,5})?).*$/g, '$1');
}

</script>
Skesh
killer8080 Огромное тебе спасибо!

_____________
*пускает слюну, глядя на код* :)
Быстрый ответ:

 Графические смайлики |  Показывать подпись
Здесь расположена полная версия этой страницы.
Invision Power Board © 2001-2024 Invision Power Services, Inc.