AJAX при нажатии отключить кнопку отправки и включить снова - PullRequest
0 голосов
/ 29 ноября 2018

Привет всем, у меня есть эта функция, которая работает потрясающе, но я получаю небольшую проблему

 $(document).ready(function(){
$("input[type='submit']").attr("disabled", false);
$("form").submit(function(){
  $("input[type='submit']").attr("disabled", true).val("Please wait.");
    setTimeout(function(){
    $("input[type='submit']").attr("disabled", false).val("Submit");    
}, 3*1000);
  return true;
})
})

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

Я надеюсь, вы поняли мою точку зрения.я знаю, что мне нужно изменить некоторые функции в функции, но у меня возникают некоторые проблемы с этим ...

1 Ответ

0 голосов
/ 29 ноября 2018

Используйте this для ссылки на текущую отправленную форму, а затем вы можете использовать .find для получения потомка этой формы submit input:

$("form").submit(function(){
  const input = $(this)
    .find("input[type='submit']")
    .attr("disabled", true)
    .val("Please wait.");
  setTimeout(function(){
    input
      .attr("disabled", false)
      .val("Submit");    
  }, 3*1000);
  return true;
});

Также обратите внимание, что вы, вероятно, предпочтете .prop более .attr, если только вы не используете древнюю версию jQuery.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...