Модераторы: Sardar, Aliance
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Действие в зависимости от заполнености формы, If else 
:(
    Опции темы
Evgen11
Дата 9.3.2010, 17:27 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 29
Регистрация: 9.3.2010

Репутация: нет
Всего: нет



Здравствуйте! Помогите разобраться. Вот есть скрипт который проверяет некоторые формы на странице на пустоту и выводит сообщение если поля не заполнены:

Код

<script language=JavaScript>
function check_form(form){
var num=0;
for (var i = 1; i < form.elements.length; i=i+2){
if(document.forms.aa.elements[i].value==''){
num++;
}
}
if (num==(form.elements.length-2)/2) {
$("#help").load("http://new/help.php?key=no_foto"); // Если поля не заполнены то делаем этот запрос, и останавливаем.
return false;}
else {
return false;
}
}
</script>


А что надо дописать? что бы По ELSE делался вот этот запрос:
($("#help").load("http://new/help.php?key=load_image"));
и продолжалось выполнение программы.

Заранее спасибо за советы.
PM MAIL   Вверх
bars80080
Дата 9.3.2010, 20:23 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


прапор творюет
****
Награды: 1



Профиль
Группа: Завсегдатай
Сообщений: 12022
Регистрация: 5.12.2007
Где: Königsberg

Репутация: 44
Всего: 315



убрать return false, который останавливает продолжение программы
PM MAIL WWW   Вверх
Evgen11
Дата 9.3.2010, 20:48 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 29
Регистрация: 9.3.2010

Репутация: нет
Всего: нет



Если так, тоже не работает.
Код

<script language=JavaScript>
function check_form(form){
var num=0;
for (var i = 1; i < form.elements.length; i=i+2){
if(document.forms.aa.elements[i].value==''){
num++;
}
}
if (num==(form.elements.length-2)/2) {
$("#help").load("http://new/help.php?key=no_foto");
return false;
}
else {
($("#help").load("http://new/help.php?key=load_image")); // То этот запрос, тупо НЕ выполняется, хотя очень надо!!!
}
}
</script>

PM MAIL   Вверх
bars80080
Дата 9.3.2010, 20:56 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


прапор творюет
****
Награды: 1



Профиль
Группа: Завсегдатай
Сообщений: 12022
Регистрация: 5.12.2007
Где: Königsberg

Репутация: 44
Всего: 315



я имел ввиду первый ретурн. убери оба
PM MAIL WWW   Вверх
ksnk
Дата 9.3.2010, 21:07 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


прохожий
****


Профиль
Группа: Комодератор
Сообщений: 6855
Регистрация: 13.4.2007
Где: СПб

Репутация: 48
Всего: 386



А первый запрос выполняется?
Учитывая такое 
Код

...; i=i+2

и 
Код

if (num==(form.elements.length-2)/2) { ...

логика этого скрипта сильно напоминает бред...  smile 

Это сообщение отредактировал(а) ksnk - 9.3.2010, 21:08


--------------------
Человеку свойственно ошибаться, программисту свойственно ошибаться профессионально ! user posted image
PM MAIL WWW Skype   Вверх
Evgen11
Дата 9.3.2010, 21:19 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 29
Регистрация: 9.3.2010

Репутация: нет
Всего: нет



Да!!! (всё проверено!) первый запрос выполняется - если не заполнено ни одно поле (их может быть от 1 до 8 - файл/комментарий, файл/комментарий и т.д. Поэтому и деления на 2........ ), выводит сообщение в DIV #help. и останавливает выполнение...

И нужно что бы по ELSE тоже выполнялся запрос и продолжалось всё далее........
PM MAIL   Вверх
Evgen11
Дата 9.3.2010, 22:24 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 29
Регистрация: 9.3.2010

Репутация: нет
Всего: нет



Сейчас проверил всё дело в браузере.
В ИЕ работает, а в Мазилле НЕТ. Помогите пожалуйста как сделать что бы в обоих работало. Вот мой код, он висит на событии "onsubmit":
Код

<script language=JavaScript>
function check_form(form){
var num=0;
for (var i = 1; i < form.elements.length; i=i+2){
if(document.forms.aa.elements[i].value==''){
num++;
}
}
if (num==(form.elements.length-2)/2) {
$("#help").load("http://new/help.php?key=no_foto");// Все формы пустые, Загружаем сообщение что не выбрано ни одного фото, и останавливаем
return false;
}
($("#help").load("http://new/help.php?key=load_image"));  // Загружаем значёк загрузки файлов и продолжаем отправку формы.....
}
</script>


Это сообщение отредактировал(а) Evgen11 - 9.3.2010, 22:26
PM MAIL   Вверх
iluvatar
Дата 10.3.2010, 13:26 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 266
Регистрация: 17.9.2007

Репутация: нет
Всего: 4



в Firefox есть такой плагин - firebug. С помощью него можно дебажить js. Пользуйтесь им и все поймете сами.
PM MAIL ICQ   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | JavaScript: для новичков | Следующая тема »


 




[ Время генерации скрипта: 0.0492 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.