/ / Desativar o botão gerado pelo CakePHP FormHelper - javascript, jquery, cakephp

Desativar o botão gerado pelo CakePHP FormHelper - javascript, jquery, cakephp

Estou usando um botão de envio gerado peloCakePHP FormHelper. Gostaria de desativá-lo usando jQuery depois que o botão for clicado. Tentei usar o atributo normal "disabled", mas não funcionou.

Como posso desativar o botão para evitar reenvios acidentais de formulários?

Respostas:

4 para resposta № 1

Desativar o formulário pode ser uma solução melhor para evitar outros envios além de clicar no botão de envio, como digitar enter em uma entrada de texto. Você pode definir um data-disabled no formulário após o primeiro envio e evita-o nos envios seguintes, se estiver definido.

$("form").on("submit", function(e) {
var $form = $(this);

if($form.attr("data-disabled") === true) {
e.preventDefault();
return false;
}
$form.attr("data-disabled", true);
});

0 para resposta № 2

você simplesmente adiciona o botão de envio ao seu formulário e desativa o botão de envio quando clicado

<?php
echo $this->Form->input("submitButton", array(
"id" => "submit",
"type" => "submit",
"label" => "",
"onclick" => "$(#"submit").disabled = true;"
));
?>