gpt4 book ai didi

javascript - 此代码阻止我的表单提交(仅在 Chrome 中,适用于 IE 和 Firefox)

转载 作者:行者123 更新时间:2023-12-02 19:37:26 33 4
gpt4 key购买 nike

我有这段代码,在我单击提交后,它会禁用页面上的所有提交按钮和所有 AJAX 链接。我克隆了单击的事件,以便服务器端我知道已按下什么提交。这在 IE 和 Firefox 上完美运行,但在 Chrome 上它拒绝提交任何内容。它似乎阻止了提交,因为我看到克隆已正确插入到 DOM 中,并且控制台中没有记录任何错误。

// Block all other submit and ajax requests. The subscribe users burron is avoided because it handles this by itself
$( 'input[type=submit]' ).not( '#ai1ec_subscribe_users' ).click( function() {
block_all_submit_and_ajax( this );
} );
// Disables all submit buttons after a submit button is pressed.
var block_all_submit_and_ajax = function( el ) {
// Clone the clicked button, we need to know what button has been clicked so that we can react accordingly
var $clone = $( el ).clone();
// Change the type to hidden
$clone.attr( 'type', 'hidden' );
// Put the hidden button in the DOM
$( el ).after( $clone );
// Disable all submit button.
$( '#facebook input[type=submit]' ).attr( 'disabled', true );
// unbind all click handler from ajax
$( '#facebook a.btn' ).unbind( "click" );
// Disable all AJAX buttons.
$( '#facebook a.btn' ).click( function( e ) {
e.preventDefault();
e.stopImmediatePropagation();
} );
}

编辑显然问题出在该行

$( '#facebook input[type=submit]' ).attr( 'disabled', true );

因为如果我评论说它也可以在 Chrome 中使用。我使用的是 jQuery 1.6(但它是一个 WordPress 插件,因此版本可能会有所不同)

谁知道出了什么问题吗?

最佳答案

当您的按钮禁用时,不会提交表单,添加一个 setTimeOut 来更改踏板,我将进行类似的工作

 setTimeout(function() {
$( '#facebook input[type=submit]' ).attr( 'disabled', true );

},0);

即使超时时间为 0,它也能工作

关于javascript - 此代码阻止我的表单提交(仅在 Chrome 中,适用于 IE 和 Firefox),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10788205/

33 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com