Javascript.RU

Создать новую тему Ответ
 
Опции темы Искать в теме
  #1 (permalink)  
Старый 31.03.2011, 09:44
Новичок на форуме
Отправить личное сообщение для myafa Посмотреть профиль Найти все сообщения от myafa
 
Регистрация: 31.03.2011
Сообщений: 4

Проверка данных формы составным условием?
Добрый день, уважаемые форумчане! Нужна Ваша скорая помощь.
У меня есть форма на php "custinfo_form" в которую пользователь вносит данные, проверка их корректности выполняется вызовом js скрипта (из отдельного файла).

Пример: в форме есть поле ves

Нужно сравнить значение введенное пользователем с двумя цифровыми значениями в одной строке. Пишу так:
.............
if ((document.custinfo_form.ves.value<"10") || (document.custinfo_form.ves.value>"3"))
		{
			alert("Вам не подходят детские кресла Beby Car серии corona");
			return false;
		}
return true;
.............


Проверка выполняется не корректно, и со скобками и без. Но если оставить только одно условие, то все работает прекрасно.
Вопрос: правильно ли я обращаюсь к полю формы и можно ли так обращаться два раза, если нет то как быть?

Очень жду ответа
Ответить с цитированием
  #2 (permalink)  
Старый 31.03.2011, 09:53
Аватар для Skipp
.
Отправить личное сообщение для Skipp Посмотреть профиль Найти все сообщения от Skipp
 
Регистрация: 30.03.2010
Сообщений: 1,813

"10" - это строка
10 - а это число
document.custinfo_form.ves.value - это строка
< - а как вы думаете как этот оператор будет работать со строками
if ((parseInt(document.custinfo_form.ves.value)<10) || (parseInt(document.custinfo_form.ves.value)>3))

parseInt() - преобразует строку в число
__________________
.
Ответить с цитированием
  #3 (permalink)  
Старый 31.03.2011, 09:57
Аватар для x-yuri
Отправить личное сообщение для x-yuri Посмотреть профиль Найти все сообщения от x-yuri
 
Регистрация: 27.12.2008
Сообщений: 4,201

alert([ "9" < "10", Number("9") < 10 ]);
Ответить с цитированием
  #4 (permalink)  
Старый 31.03.2011, 11:05
Новичок на форуме
Отправить личное сообщение для myafa Посмотреть профиль Найти все сообщения от myafa
 
Регистрация: 31.03.2011
Сообщений: 4

Skipp, спасибо за разъяснение со строками и числовыми значениями, кажется в голове себе уяснила
Но вот проблема осталось та же:
Если одно условие - работает, если два, то нет. Всегда выдает folse, т.е. сообщение alert...
Как быть?

p.s. может вообще обращение "document.custinfo_form.ves.value" употреблять несколько раз нельзя?
Ответить с цитированием
  #5 (permalink)  
Старый 31.03.2011, 11:47
Аватар для рони
Профессор
Отправить личное сообщение для рони Посмотреть профиль Найти все сообщения от рони
 
Регистрация: 27.05.2010
Сообщений: 33,118

myafa,
if ((parseInt(document.custinfo_form.ves.value)<10) || (parseInt(document.custinfo_form.ves.value)>3))
Под это условие подходит всё ...скорее всего надо
if ((parseInt(document.custinfo_form.ves.value)<10)&&(parseInt(document.custinfo_form.ves.value)>3))
или
if ((parseInt(document.custinfo_form.ves.value)>10)||(parseInt(document.custinfo_form.ves.value)<3))
Ответить с цитированием
  #6 (permalink)  
Старый 31.03.2011, 12:34
Новичок на форуме
Отправить личное сообщение для myafa Посмотреть профиль Найти все сообщения от myafa
 
Регистрация: 31.03.2011
Сообщений: 4

Рони, Вы правильно подметили про знаки. Это здесь я ошиблась, а в своем скрипте условия "меньше" трех "или" "больше" десяти.
Спасибо за внимательность

Только вопрос по прежнему открыт...
..........
if ((document.custinfo_form.ves.value<"3") || (document.custinfo_form.ves.value>"10"))
	        {
	            alert("Вам не подходят детские кресла Beby Car серии corona");
	            return false;
	        }
	return true;
..........
Ответить с цитированием
  #7 (permalink)  
Старый 31.03.2011, 12:38
Аватар для Skipp
.
Отправить личное сообщение для Skipp Посмотреть профиль Найти все сообщения от Skipp
 
Регистрация: 30.03.2010
Сообщений: 1,813

Сообщение от myafa
кажется в голове себе уяснила
видимо не совсем)
разве так не работает?
if ((parseInt(document.custinfo_form.ves.value)<3) || (parseInt(document.custinfo_form.ves.value)>10))
	        {
	            alert("Вам не подходят детские кресла Beby Car серии corona");
	            return false;
	        }
	return true;
__________________
.
Ответить с цитированием
  #8 (permalink)  
Старый 31.03.2011, 13:42
Новичок на форуме
Отправить личное сообщение для myafa Посмотреть профиль Найти все сообщения от myafa
 
Регистрация: 31.03.2011
Сообщений: 4

Сообщение от Skipp
разве так не работает?
К моему большому сожалению нет.
И с кавычками и без кавычек ....

Если подставить, просто для эксперимента, во второе условие проверку соседнего поля формы то все работает:

if ((parseInt(document.custinfo_form.ves.value)<3) || (parseInt(document.custinfo_form.rost.value)>80))
	            {
	                alert("Вам не подходят детские кресла Beby Car серии corona");
	                return false;
	            }
	    return true;

проходит правильно проверку и на входное значение по весу и по росту
Почему...

А можно вообще в этой проверке не каждый раз смотреть что в другом файле ввел пользователь, а один раз взять данные и поместить их в переменную и уже с ней работать?

Последний раз редактировалось myafa, 31.03.2011 в 17:22.
Ответить с цитированием
  #9 (permalink)  
Старый 01.04.2011, 08:30
Аватар для x-yuri
Отправить личное сообщение для x-yuri Посмотреть профиль Найти все сообщения от x-yuri
 
Регистрация: 27.12.2008
Сообщений: 4,201

а что так выдает?
alert( document.custinfo_form.ves.value );
if ((parseInt(document.custinfo_form.ves.value)<3) || (parseInt(document.custinfo_form.ves.value)>10))
	        {
	            alert("Вам не подходят детские кресла Beby Car серии corona");
	            return false;
	        }
Ответить с цитированием
Ответ



Опции темы Искать в теме
Искать в теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
проверка ввода данных формы mugoleg Общие вопросы Javascript 3 27.02.2011 14:34
Проверка полей отправляемой формы. denisOgr jQuery 6 18.10.2010 19:40
Простая проверка формы. Добавить "динамики". Jurasmi Элементы интерфейса 3 07.04.2010 16:48
Проверка и отправка данных из формы Катерина Общие вопросы Javascript 2 25.03.2010 16:56
проверка данных формы Zzet jQuery 3 31.07.2009 22:05