Проверка ввода только цифр

usascha

Новичок
Проверка ввода только цифр

В этом разделе не нашел такой темы, поэтому пишу новую

Есть несколько строчек таблицы для указания количества. Как с помощью JS разрешить ввод только цифр?

Есть пример кода:

PHP:
if(allBooks.elements['line_sum[n]'] = NaN) {
    alert("Error: ...
Как я понимаю, это "NaN" и есть ограничитель, но почему-то не срабатывает. Заметил, что если написать "...allBooks.line_sum[n]...", то эта конструкция работает, но надо как указано в начале.

Спасибо.
 

Romantik

TeaM PHPClub
Во первых не =, а == в условии,
а во вторых лучший способ имхо не давать вводить ничего, кроме цифр по событию OnKeyPress проверять в условии
if ( isNaN(String.fromCharCode)== true .....
ну и на пробел не забывай =)
 

usascha

Новичок
Проблема оказалась значительно шире:

Вот часть кода:

PHP:
function count(allBooks,n,u) {
	allBooks.line_sum[n].value = allBooks.line[n].value * u;
	if(allBooks.line_sum[n].value == "NaN") {
		alert("text");
		allBooks.line[n].value = allBooks.line[n].value.substring(0, allBooks.line[n].value.length-1);
...
Поля формы формируются следующим образом:
PHP:
<INPUT OnKeyPress=count(this.form,<? echo $results[$n]['book_id']; ?>,<? echo $results[$n]['book_price']; ?>) size=3 name="line">::<INPUT readOnly size=10 name="line_sum">
Проблема заключается в том, что этот код, но без php вставок работает (взял из инета), а вот с этими доработками ни фига.

Сообщение об ошибке:
"line_sum[...]" - есть null или не является объектом
Code: 0

Я пытался менять line_sum[n] на elements['line_sum[n]'], но от ошибки это избавляло, а вот работоспособности не прибавляло.

Как быть что менять?
 
Сверху