このスクリプトは、送信時にフォームをクリアし、応答をフェードインおよびフェードアウトしますが、何らかの奇妙な理由でフォームを 2 回送信しています。ユーザーが 2 回送信した情報の送信を停止するにはどうすればよいでしょうか?
コードは次のとおりです。
<script type="text/javascript">
jQuery(document).ready(function() {
var clearOnSuccess = function() {
if (jQuery('#emailSubmit').length > 0) {
jQuery('#email').val('');
}
};
clearOnSuccess();
jQuery('#signup').submit(function() {
var data = jQuery(this).serializeArray();
data.push({'name': 'ajax', 'value': 1});
var jqXHR = jQuery.ajax({
url: jQuery(this).attr('action'),
type: jQuery(this).attr('method'),
data: data
});
jqXHR.done(function(data) {
jQuery('#response').fadeIn(1500).delay(3500).fadeOut(1500);
clearOnSuccess();
});
return false;
});
});
</script>