sinneren
@sinneren

Как задать кнопке submit состояние disabled и при этом отправить форму(не аякс)?

Есть, казалось бы, тривиальная задача: при отправке формы кнопку сабмиттер задизейблить, сменить её текст и всё. Но Если навесить обработчик на клик - то форма отправляться не будет. Если навесить на событие отправки формы,то после изменения состояния кнопки - страница обновится, будто отправила данные,но на самом деле ничего не отправит.
На всякий вываливаю этот элементарный код(это уже чёрти какая итерация попытки реализовать. аналогичен навешиванию события на саму форму):
$(document).on('click', '.ButtonBlock .btn-success', function() {
              if ($(this).hasClass('disable')) return false;
              $(this).addClass('disabled').val('Подождите...');
              $(this).attr('disabled', true);
              $('form').trigger('submit');
          });
  • Вопрос задан
  • 634 просмотра
Решения вопроса 1
sinneren
@sinneren Автор вопроса
Нашёл свой вариант. Сначала отметить классом и затем уже симулировать дизейбл
$(document).ready(function () {
  $('.ButtonBlock .btn-success').on('click', function() {
    if ($(this).hasClass('disabled')) {
      return false;
    } else {
      $(this).val('Подождите...');
      $(this).addClass('disabled');
    }
  });
});
Ответ написан
Комментировать
Пригласить эксперта
Ответы на вопрос 1
@titronfan
Не знаю, в тему ли ответ:
$('input[type=submit]').click(function() {
	$(this).attr('disabled', 'true');
	$(this).parents('form').submit();
});
Ответ написан
Ваш ответ на вопрос

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

Похожие вопросы
23 нояб. 2024, в 01:31
1000 руб./за проект
23 нояб. 2024, в 00:16
2000 руб./за проект
22 нояб. 2024, в 23:55
3000 руб./за проект