Страница 1 из 1

Как отключить кнопку Отправить (submit) в форме на сайте

СообщениеДобавлено: 13 ноя 2020, 07:59
Лера
Недавно столкнулась с такой интересной задачей. В связи с различными законами о персональных данных потребовалось во всех формах обратной связи сделать функционал, при котором нельзя было бы отправить форму не поставив галочку о том что человек согласен на обработку персональных данных. Пока не поставит галочку - форма не должна отправляться.
Как это сделать? Помогите пожалуйста.

Re: Как отключить кнопку Отправить (submit) в форме на сайте

СообщениеДобавлено: 14 ноя 2020, 07:03
Платон
Попробуйте сделать следующим образом.
В верху страницы разместите вот такой код:
Код: выделить все
<script src="https://ajax.googleapis.com/ajax/libs/jquery/3.2.1/jquery.min.js"></script>
<script>
   $(function () {
      var use_privacy = true;
      $('#form1').on('submit', function (e) {

         if (use_privacy) {
            if (!$(this).find('input[name=privacy]').prop('checked')) {
               alert('Для продолжения вы должны принять условия Пользовательского соглашения');
               return false;
            }
         }

         //Тут код отправки формы
         document.write('Форма успешно отправлена!');
                  
location.replace("/page.htm");
         e.preventDefault();
      });
   });
</script>

В самой же форме добавьте такие строчки:
Код: выделить все
<p>
<input type="checkbox" name="privacy">
<a href="/info.htm" target="_blank">Я согласен на обработку персональных данных</a>
</p>

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

Re: Как отключить кнопку Отправить (submit) в форме на сайте

СообщениеДобавлено: 16 ноя 2020, 08:48
BoiKot
Предлагаю вариант проще. Добавляете в форму такую строчку:
Код: выделить все
<input id="checkbox" type="checkbox" name="checkbox" onchange="document.getElementById('submit').disabled = !this.checked;">
    <label for="checkbox">Я согласен на обработку персональных данных</label>

И в самой кнопке пишите так:
Код: выделить все
<input type="submit" id="submit" disabled="disabled" value="Отправить заявку" name="ok">

По умолчанию кнопка будет отключена. И что бы форма отправилась хочешь не хочешь а нужно поставить галочку. А это как раз вам и нужно.

Re: Как отключить кнопку Отправить (submit) в форме на сайте

СообщениеДобавлено: 18 ноя 2020, 07:41
Лера
Спасибо огромное. Второй способ мне лично понравился больше, его и применила. Все работает.