flapflapjack
@flapflapjack
на треть я прав

Почему скрипт ведет себя рандомно?

На JSFiddle из-за стороннего домена не выводится ссылка на скрипт, потому вылил на свой левый хостинг.

Имеется страничка:
<script src="https://ajax.googleapis.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>

<form action='3.php' method='post' id='myform' onsubmit="func();">
    
    <input type='text' required="" name='text'>
    <input name='testname' type='checkbox'><label for='testname'>Go to 4 php?</label>
    <input type='submit' onclick='func();'>
    
</form>


function func(){
        var txt=$('[name=text]').val();
        var chbx=$('[name=testname]').val();
        
        if(chbx=='on')
        {
            
    $("#myform").submit(function(){
        
        $.ajax({
  type: "POST",
  url: '/3.php',
  data: {
      txt: txt,
      chbx: chbx
  },
  success: function(){
      location.href='4.php';
  }
});
    });
    }
    else
    {
       
        $("#myform").submit();
    }
    }


Ну 3.php и 4.php выкладывать не буду. там просто 3.php пишет в файл POST данные, а 4 - выводит из него данные на страницу.

Смысл сего действия - если человек поставил чекбокс, то его перенаправляет на 4.php перед этим отправив данные на 3.php/
а если чекбокс не стоит, то отправляется на 3.php как при обычном поведении формы.

Залил я это дело сюда .

Так вот - бывает что при нажатом чекбоксе отправляет на 3.php, бывает на 4. Вообще полный рандом, но чаще на 4.php.

Вроде условие проверки значения чекбокса стоит верное - делал алерт, проверял значение.

Почему скрипт ведет себя так странно? Или я где-то ошибся?
  • Вопрос задан
  • 53 просмотра
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы