我正在使用由CakePHP FormHelper生成的提交按鈕。我想在單擊按鈕後使用jQuery禁用它。我嘗試使用正常的「禁用」屬性,但沒有做任何事情。禁用由CakePHP FormHelper生成的按鈕
如何禁用按鈕以防止意外的表單重新提交?
我正在使用由CakePHP FormHelper生成的提交按鈕。我想在單擊按鈕後使用jQuery禁用它。我嘗試使用正常的「禁用」屬性,但沒有做任何事情。禁用由CakePHP FormHelper生成的按鈕
如何禁用按鈕以防止意外的表單重新提交?
禁用表單可能是一個更好的解決方案,可以防止除點擊提交按鈕之外的提交內容,例如在文本輸入中按回車。您可以在第一次提交後在表單上設置一個data-disabled
屬性,如果設置了該屬性,則可以在提交之後阻止它。
$('form').on('submit', function(e) {
var $form = $(this);
if($form.attr('data-disabled') === true) {
e.preventDefault();
return false;
}
$form.attr('data-disabled', true);
});
你簡單地說,添加提交按鈕,您的形式,一旦它被點擊
<?php
echo $this->Form->input('submitButton', array(
'id' => 'submit',
'type' => 'submit',
'label' => '',
'onclick' => '$(#"submit").disabled = true;'
));
?>
'$( '形式')禁用提交按鈕。在( '提交',函數(){$ ('input:submit',this).prop('disabled',true); return $('input:submit',this).prop('disabled')=== true?false:true;});' – Ohgodwhy
@Ohgodwhy不需要三元。只需返回'!$('input:submit',this).prop('disabled')' – Ian