Warning: Cannot use a scalar value as an array in /home/admin/public_html/forum/include/fm.class.php on line 757

Warning: Invalid argument supplied for foreach() in /home/admin/public_html/forum/include/fm.class.php on line 770
Форумы портала PHP.SU :: Версия для печати :: submit
Форумы портала PHP.SU » Клиентская разработка » JavaScript & VBScript » submit

Страниц (1): [1]
 

1. den_y - 23 Марта, 2007 - 08:46:01 - перейти к сообщению
Здравствуйте. Такая проблема! Нужно сделать так чтоб при нажатии кнопки submit сначала вызывалась функция javascript а потом уж передавался запрос на сервер! просто мне нужно чтобы перед отправкой данных проверялись правильно ли они заданы. Зранее благодарен!
2. -SCHATTEN- - 23 Марта, 2007 - 09:03:37 - перейти к сообщению
А что проверку данных нельзя сделать в обработчике ? на РНР ?
3. evgenijj - 23 Марта, 2007 - 09:11:50 - перейти к сообщению
<script type="text/javascript">
function validate(f)
{
..........................
}
</script>
<form action="action.php" name="myform" method="POST" onsubmit="validate(document.forms['myform']);" >
4. valenok - 23 Марта, 2007 - 09:14:21 - перейти к сообщению
-SCHATTEN-
Можно. [ и нужно ]
Это для того чтобы не заставлять пользователя ждать.

den_y

Убери < input type='submit' >

PHP:
скопировать код в буфер обмена
  1.  
  2. < Form name='cont'  id='cont'>
  3. ...
  4. < input type='button' onclick='subm()'>
  5. < /form>
  6.  
  7. < Script language='JavaScript'>
  8. function subm(){
  9.   do_whateve();
  10.   cont.submit();
  11. }
  12. < /Script>
  13.  
  14.  





Если нужно чтоб только при положительных результатах проверки данных отсылало, я делал так:

PHP:
скопировать код в буфер обмена
  1.  
  2. function subm(){
  3.         if(check()){ cont.submit(); }
  4. }
  5.  


А ф-ция check в свою очередь проверяла данные и возвращала True или False.
И ещё писала пользователю где или в чём ошибка.
5. Viper - 26 Марта, 2007 - 08:56:32 - перейти к сообщению
можно ещё так:
PHP:
скопировать код в буфер обмена
  1. function filled(form1) {
  2.         if (form1.txt_authname.value == '') {
  3.                 alert("Введите логин!");
  4.                 form1.txt_authname.focus();
  5.                 return false
  6.         }
  7. return true
  8. }
  9. <form action="<?PHP echo $editFormAction; ?>" method="POST" name="form1" onSubmit="return filled(this);">
  10. <input name="txt_authname" id="txt_authname">
  11. --------
  12. </form>

пример убогий но если форм пару тройку то можно заюзать. если форм много то через массив передаем имена и обрабатываем.

 

Powered by ExBB FM 1.0 RC1