в чем ошибка submit() не работает

Статус
В этой теме нельзя размещать новые ответы.

sympler

Постоялец
Регистрация
24 Окт 2008
Сообщения
131
Реакции
6
не работает javascript функция submit() она не отправляет форму, почему не знаю, перепробовал кучу вариантов

PHP:
<?php 
    // проверяем произошла ли отправка формы
if(isset($_POST['opros']) or isset($_POST['var1']))
{
   //вводные данные 
   
   echo "<br><br>Отправка произошла<br><br>";
   
}

?>

<script language="javascript">
<!--
var check = 2; //немного обрезал ненужный код, просто данная переменная возвращает количество выбранных вариантов


function checkSubmit() 
{
  
  if (check ==  '0')
  {
     alert ( 'Вы не выбрали ни одного варианта ответа') ;
  }
  else
  {
    document.getElementById("myTest").submit();  // вот эта хрень не отправляет форму, перепробовал все варианты!!!

  } 
}

//-->
</script>

<form action="./opros.php" method="POST" id="myTest" name="myTest" >

<input type="checkbox" value="1" id="chek1" onclick="checkCheck(this)" name="var1" />1<br>
<input type="checkbox" value="2" id="chek2" onclick="checkCheck(this)" name="var2" />2<br>
<input type="checkbox" value="3" id="chek3" onclick="checkCheck(this)" name="var3" />3<br>
<input type="checkbox" value="4" id="chek4" onclick="checkCheck(this)" name="var4" />4<br>
<input type="checkbox" value="5" id="chek5" onclick="checkCheck(this)" name="var5" />5<br>
<input type="checkbox" value="6" id="chek6" onclick="checkCheck(this)" name="var6" />6<br>
<input type="checkbox" value="7" id="chek7" onclick="checkCheck(this)" name="var7" />7<br>
<input type="checkbox" value="8" id="chek8" onclick="checkCheck(this)" name="var8" />8<br> 
<input type="checkbox" value="9" id="chek9" onclick="checkCheck(this)" name="var9" />9<br>
<input type="checkbox" value="10" id="chek10" onclick="checkCheck(this)" name="var10" />10<br>

<input type="button" value="Проголосовать"  name="opros" onClick="checkSubmit()" /><br>

</form>
 
PHP:
<input type="button" value="Проголосовать"  name="opros" onClick="checkSubmit()" /><br>
замени на
PHP:
<input type="submit" value="Проголосовать"  name="opros" onClick="checkSubmit()" /><br>

А вообще форма и так отправляется, просто проверку на isset не проходит, если пункт 1 при отправке не выбран.
 
PHP:
<input type="button" value="Проголосовать"  name="opros" onClick="checkSubmit()" /><br>
замени на
PHP:
<input type="submit" value="Проголосовать"  name="opros" onClick="checkSubmit()" /><br>
А вообще форма и так отправляется, просто проверку на isset не проходит, если пункт 1 при отправке не выбран.

так пробовал, отправлка формы в таком случае происходит всегда
я же для проверки писал функцию checkSubmit() которая проверяет если хоть один вариант отмечен тогда происходит отправка формы если нет то выскакивает alert но отправка происходить не должна, а при type=submit отправка все равно происходит, а при button - не реагирует вообще, поэтому я и написал что неработает JS функция submit()

даже если укажу var check = 0; форма все равно отпарвляется
 
а при button - не реагирует вообще
То ли я вопроса не понял, то ли у меня всё работает. Пробовал в ишаке, опере и фаерфоксе первоначальный вариант скрипта - везде форма отправляется, просто не пишет "Отправка произошла" если первый чекбокс не отметить.
 
такое очень легко сделать например с помощью jQuery...

если актуально, код напишу...
 
замени

Код:
<input type="button" value="Проголосовать"  name="opros" onClick="checkSubmit()" /><br>
на
Код:
<input type="button" value="Проголосовать"  name="opros" onClick="if (checkSubmit()) this.submit()" /><br>

и измени функцию приблизительно вот так:

Код:
function checkSubmit()  
{ 
   
  if (!check) 
  { 
     alert ( 'Вы не выбрали ни одного варианта ответа') ; 
  } 
  return (check!=0);
}
 
Статус
В этой теме нельзя размещать новые ответы.
Назад
Сверху