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

HTML+CSS+JavaScript

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

 

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

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

тема: подтверждение отправки формы
 
 автор: ronin   (18.12.2007 в 19:39)   письмо автору
 
 

Здравствуйте!
Как составить на яве-скрипте подверждение submit
на форуме не нашел, только подтверждение ссылки, а тут форма обращается на себя же

   
 
 автор: yuk   (18.12.2007 в 20:53)   письмо автору
 
   для: ronin   (18.12.2007 в 19:39)
 

Вы это имели ввиду?

<script>
function conf(){
    if (confirm("Вы уверены?"))
        return true;
    else return false;
}
</script>
    
<form onsubmit="return conf()">
<input type="submit" value="pusk">
</form>

   
 
 автор: ronin   (19.12.2007 в 10:40)   письмо автору
 
   для: yuk   (18.12.2007 в 20:53)
 

в форме:

onsubmit="return Validator(this)"

в файле .js

function Validator(theForm)
{

  if (theForm.name.value == "")
  {
    alert("Вы не заполнили поле имя!");
    theForm.name.focus();
    return (false);
  }

  return (true);

}

   
 
 автор: AlexSol   (19.12.2007 в 11:38)   письмо автору
 
   для: ronin   (19.12.2007 в 10:40)
 

return (false); --> return false;
return (true); --> return true;

   
 
 автор: ronin   (19.12.2007 в 12:11)   письмо автору
 
   для: AlexSol   (19.12.2007 в 11:38)
 

Извиняйте! но как Ваш код вставить в функцию?

   
 
 автор: sim5   (19.12.2007 в 13:12)   письмо автору
 
   для: ronin   (19.12.2007 в 10:40)
 

Что же вам нужно - сказать пользователю, что форма отправляется, или проверить заполнение формы?

   
 
 автор: ronin   (19.12.2007 в 13:39)   письмо автору
 
   для: sim5   (19.12.2007 в 13:12)
 

проверка форм - работает, только попросить подтверждение отправки формы "уверенны ли Вы что форма должна быть отправлена!"

   
 
 автор: sim5   (19.12.2007 в 13:55)   письмо автору
 
   для: ronin   (19.12.2007 в 13:39)
 

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

   
 
 автор: ronin   (19.12.2007 в 14:04)   письмо автору
 
   для: sim5   (19.12.2007 в 13:55)
 

Поэтому и прошу помощи, заранее благодпрен!

   
 
 автор: sim5   (19.12.2007 в 14:14)   письмо автору
 
   для: ronin   (19.12.2007 в 14:04)
 

А чем вам помочь, форма ваша, код ваш, никто кроме вас его не видел. Да и ничего сложного в этом нет, все складывается из обычных if ... else. Если проверка заполнения вашей формы, это одна функция, то объявите в ней переменную, например:
var check = true;
Если при проверке заполнения формы будет обнаруженно не заполненное поле, то устанавливайте эту переменную в false. По окончании проверки заполнения, проверяйте эту переменную, и если она равна true, выводите свой вопрос пользователю.

   
 
 автор: ronin   (19.12.2007 в 16:19)   письмо автору
 
   для: sim5   (19.12.2007 в 14:14)
 

форма

<form enctype="multipart/form-data"  name="forma" action="index.php?action=send" onsubmit="return Validator(this)" method="post" >                                          
<input type="submit" name="submit" value="submit" >


файл .js

function Validator(theForm) 


  if (theForm.name.value == "") 
  { 
    alert("Вы не заполнили поле имя!"); 
    theForm.name.focus(); 
    return (false); 
  } 

  return (true); 



   
 
 автор: sim5   (19.12.2007 в 16:30)   письмо автору
 
   для: ronin   (19.12.2007 в 16:19)
 

Надо отметить, что форма оригинальная! И что в ней проверять?

   
 
 автор: ronin   (19.12.2007 в 16:43)   письмо автору
 
   для: sim5   (19.12.2007 в 16:30)
 

мне только дописать в функцию, что если юзер нажал сабмит и все поля заполнены(если какоето поле не заполнено - это из другой оперы и сейчас роли не играет)то выскакивает alert: Вы уверены, что нужно отправить форму? после подверждения форма передается обработчику.

   
 
 автор: sim5   (19.12.2007 в 16:55)   письмо автору
 
   для: ronin   (19.12.2007 в 16:43)
 

Вы так думаете, что роли не играет? Если у вас одно поле в форме, то:

function Validator(theForm) {  
  if (theForm.name.value == "") {  
    alert("Вы не заполнили поле имя!");  
    theForm.name.focus();  
    return false;  
  } else { 
    alert('Отправлять?');
    return true;
  }  
}

И этого будет достаточно, но если у вас несколько полей, да плюс еще, например, чекбоксы, которые тоже надо проверить, то картина совсем другая. Вам написали првильно - return true, вы пишете return (true), и даже после того как вас поправили, вы продолжаете писать глупость. Запомните return true и return false - не надо скобок.

   
 
 автор: ronin   (19.12.2007 в 17:09)   письмо автору
 
   для: sim5   (19.12.2007 в 16:55)
 

Прошу прошение, но у меня пробелы в познаниях, привожу функцию полностью:
function Validator(theForm)
{

if (theForm.name.value == "")
{
alert("&#194;&#251; &#228;&#238;&#235;&#230;&#237;&#251; &#226;&#226;&#229;&#241;&#242;&#232; &#232;&#236;&#255; !");
theForm.name.focus();
return (false);
}


if (theForm.lastname.value == "")
{
alert("&#194;&#251; &#228;&#238;&#235;&#230;&#237;&#251; &#226;&#226;&#229;&#241;&#242;&#232; &#244;&#224;&#236;&#232;&#235;&#232;&#254; !");
theForm.lastname.focus();
return (false);
}
if (theForm.password.value == "")
{
alert("&#194;&#251; &#228;&#238;&#235;&#230;&#237;&#251; &#226;&#226;&#229;&#241;&#242;&#232; &#239;&#224;&#240;&#238;&#235;&#252; !");
theForm.password.focus();
return (false);
}
if (theForm.password.value == "")
{
alert("&#194;&#251; &#228;&#238;&#235;&#230;&#237;&#251; &#226;&#226;&#229;&#241;&#242;&#232; &#239;&#224;&#240;&#238;&#235;&#252; !");
theForm.password.focus();
return (false);
}
if (!validateEmail(theForm.email.value))
{
alert("&#194;&#251; &#228;&#238;&#235;&#230;&#237;&#251; &#226;&#226;&#229;&#241;&#242;&#232; &#239;&#240;&#224;&#226;&#232;&#235;&#252;&#237;&#251;&#233; &#253;&#235;&#229;&#234;&#242;&#240;&#238;&#237;&#237;&#251;&#233; &#224;&#228;&#240;&#229;&#241; !");
theForm.password.focus();
return (false);
}

for(i=0;i<theForm.length;i++){
if(theForm[i].type=="checkbox" && theForm[i].checked)
return true;
}
alert ("&#205;&#232;&#247;&#229;&#227;&#238; &#237;&#229; &#226;&#251;&#225;&#240;&#224;&#237;&#238;!");




return (true);

}

   
 
 автор: sim5   (19.12.2007 в 17:17)   письмо автору
 
   для: ronin   (19.12.2007 в 17:09)
 

Вы думаете кому-то будет интересно разбираться с &#226;&#226;&#229;&#241;&#242;&#232; &#232;&#236;&#255; ?

   
 
 автор: ronin   (19.12.2007 в 17:23)   письмо автору
 
   для: sim5   (19.12.2007 в 17:17)
 


function Validator(theForm)
{

  if (theForm.name.value == "")
  {
    alert("имя!");
    theForm.name.focus();
    return (false);
  }


  if (theForm.lastname.value == "")
  {
    alert("фамилия!");
    theForm.lastname.focus();
    return (false);
  }
  if (theForm.password.value == "")
  {
    alert("пароль!");
    theForm.password.focus();
    return (false);
  }
     if (!validateEmail(theForm.email.value))
  {
    alert("мыло не той системы!");
    theForm.password.focus();
    return (false);
  }

 for(i=0;i<theForm.length;i++){
    if(theForm[i].type=="checkbox" && theForm[i].checked)
        return true;
}
alert ("ничего не выбрано!");




  return (true);

}

   
 
 автор: sim5   (19.12.2007 в 18:12)   письмо автору
 
   для: ronin   (19.12.2007 в 17:23)
 

Сколько раз вам повторять - пишите return false !

function Validator(theForm) { 
  var check = "";
  var warn = new Array();
  varn['name'] = "Поле имя не заполнено";
  varn['lastname'] = "Поле фамилие не заполнено";
  varn['password'] = "Поле пароль не заполнено";
  varn['email'] = "Поле e-mail заполнено не верно"; 
  for(i=0;i<theForm.length;i++) { 
    if (theForm[i].type=="text" && theForm[i].value=="") {
          check = theForm[i].name;
          break;
       } else if (theForm[i].name=="email" && !validateEmail(theForm[i]) {
          check = theForm[i].name;
          break;
       }  
    }
  } 
  if (!check) return true;
  else {
    alert(warn[check]);
    return false; 
  }
}

В этом же цикле можно прописать и проверку чекбоксов, но что к чему у вас - не понятно.
В форме делайте вызов функции так: onsubmit="Validator(this.elements)"

   
Rambler's Top100
вверх

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