Форум: Форум PHPФорум ApacheФорум Регулярные ВыраженияФорум MySQLHTML+CSS+JavaScriptФорум FlashРазное
Новые темы: 0000000
Объектно-ориентированное программирование на PHP. Авторы: Кузнецов М.В., Симдянов И.В. Самоучитель PHP 5 / 6 (3 издание). Авторы: Кузнецов М.В., Симдянов И.В. PHP. Практика создания Web-сайтов (второе издание). Авторы: Кузнецов М.В., Симдянов И.В. MySQL на примерах. Авторы: Кузнецов М.В., Симдянов И.В. PHP 5/6. В подлиннике. Авторы: Кузнецов М.В., Симдянов И.В.
ВСЕ НАШИ КНИГИ
Консультационный центр SoftTime

HTML+CSS+JavaScript

Выбрать другой форум

 

Здравствуйте, Посетитель!

вид форума:
Линейный форум Структурный форум

тема: Проверка незаполненных полей формы джавой. Как?
 
 автор: Evgen   (12.08.2007 в 18:58)   письмо автору
 
 

Подскажите пожалста, как сделать?
Понимаю что вопрос из разряда "начальной школы", но тем не менее второй выходной пропал, а результата нету ! Грызть в срочном порядке JS - не выход!
Форма хтмл, обязательные поля: id_1, id_3, id_8 и т.п.
Надо проверить, что они не пусты и тогда отправлять форму.
Конструкция типа

<?
echo "
<script type=\"text/javascript\" language=\"JavaScript\">
<!--
function chekfield()
{
         if (document.zvkForm.id_1.value!='')
            document.zvkForm.submit();
         else
             alert('Не все обязательные поля заполнены!');
             return false;
}
//-->
</script>
"
;
?>

работает, но только для id_1. Как организовать цикл, перебирая массив id обязательных к заполнению полей, совершенный ХЗ !!!

   
 
 автор: ddhvvn   (12.08.2007 в 19:20)   письмо автору
 
   для: Evgen   (12.08.2007 в 18:58)
 

>Конструкция типа
>...
>работает, но только для id_1


Что это значит и как это проявляется?

p.S.: Еще Вы забыли про скобки


<? 
echo 
<script type=\"text/javascript\" language=\"JavaScript\"> 
<!-- 
function chekfield() 

         if (document.zvkForm.id_1.value!='') 
            document.zvkForm.submit(); 
         else 
             {
                alert('Не все обязательные поля заполнены!'); 
                return false; 
             }

//--> 
</script> 
"

?>

иначе false будет выдаваться ВСЕГДА!

P.p.s: тут лучше циклом воспользоваться...

   
 
 автор: sim5   (12.08.2007 в 19:23)   письмо автору
 
   для: Evgen   (12.08.2007 в 18:58)
 


<SCRIPT LANGUAGE="JavaScript">
function checkrequired(which)  {
var pass=true;
for (i=0;i<which.length;i++)
   {
       if (which.elements[i].value=="")
          {
            pass=false;
            break;
          }
       }
if (!pass)
    { 
      alert('Не все обязательные поля заполнены!'); 
       return false;  
    }  else return true;
}
</script>


В форму добавьте:
<form onsubmit="return checkrequired(this)">

   
 
 автор: Evgen   (12.08.2007 в 21:17)   письмо автору
 
   для: sim5   (12.08.2007 в 19:23)
 

Со скобками - да, пропустил, учту!
Не совсем понятно с предыдущей конструкцией

...
for (i=0;i<which.length;i++)
...

Это он будет бегать по всем полям? А если мне надо только по части, по обязательным... Я так полагал, что надо создать массив с именами обязательных полей, а потом его перебирать и проверять на заполнение. Не заполнено - alert-> break, заполнены все - submit!
Или как-то иначе?

   
 
 автор: sim5   (12.08.2007 в 21:43)   письмо автору
 
   для: Evgen   (12.08.2007 в 21:17)
 

Ну в вашем примере, вы сказали: id_1, id_2 и .т.д., т.е. можно понять, что все поля обязательные. Пример выше это и делает. Если нужно проверять конкретные поля, то можно устроить проверку через IF, а можно в примере выше "вырезать" из имени поля часть - id_ определив тем самым поле формы, а потом через switch проверить и указать действие.

   
 
 автор: Evgen   (12.08.2007 в 22:18)   письмо автору
 
   для: sim5   (12.08.2007 в 21:43)
 


>...вы сказали: id_1, id_2 и .т.д....


не, там не так было:

...Форма хтмл, обязательные поля: id_1, id_3, id_8 и т.п.


Но все равно большое спасибо за помощь! С массивом наверно было б проще (во всяком случае, на ПХП я бы это сделал без особых проблем), но использовать switch тож не проблема, главное - результат!

   
Rambler's Top100
вверх

Rambler's Top100 Яндекс.Метрика Яндекс цитирования