我有一个WordPress网站,并且有联系表单7插件,我想添加attr提交按钮以禁用重复提交。
现在我有这段代码可以防止重复提交

$(document).on('click', '.wpcf7-submit', function(e){
            if( $('.ajax-loader').hasClass('is-active') ) {
                e.preventDefault();
                return false;
            }
        });


但我想在表单发送或获取错误响应时添加禁用的attr,以获得更好的用户体验

最佳答案

改善Matt的答案-

$('.wpcf7-form').on('submit', function() {
   $(this).find('.wpcf7-submit').attr('disabled', true);
});


单击它会禁用“提交”按钮。现在,要在成功或失败之后再次激活该属性,您将需要在提交完成后删除属性(无论成功还是失败)。由于插件开发人员对事件的工作方式有些异想天开,因此我将在2019年第一季度编写此解决方案-

$('.wpcf7').on('wpcf7submit', function (e) {
   $(this).find('.wpcf7-submit').removeAttr('disabled');
});


其中“ .wpcf7”是表单的父容器,“。wpcf7-form”是表单本身。 “ wpcf7submit”是提交表单后DOM侦听的事件侦听器(无论有效或无效的事实)。

关于javascript - 联系表格7将禁用的属性添加到按钮以防止重复提交,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/49433946/

10-13 00:19