wordpress 在提交联系表格7后,什么是正确的事件?

6uxekuva  于 2023-05-16  发布在  WordPress
关注(0)|答案(1)|浏览(138)

我必须显示“感谢弹出窗口”后提交的所有联系表格。其中一个窗体本身就是一个弹出窗口,所以我必须删除它的活动类,并将活动类添加到“谢谢弹出窗口”中

jQuery('div#wpcf7-f1648-o4 form, div#wpcf7-f101-o1 form, div#wpcf7-f38-o3 form').on('submit', function() {
jQuery('#popUp').removeClass('popUp__active');  
jQuery('#popUpThanks').addClass('popUp__active');
})

但是,即使输入为空,“谢谢弹出”也会出现。它不得不出现是表单发送,提交甚至是不发送?那到底是怎么回事?
我非常非常喜欢使用jQuery,但我尝试了vanilla js来使用cf 7文档中的函数

const popUpThanks = document.getElementById('popUpThanks')
const popUp = document.getElementById('popUp')
var wpcf7Elm = document.querySelector( '.wpcf7' )
 
wpcf7Elm.addEventListener( 'wpcf7mailsent', function( event ) {
        popUpThanks.classList.add('popUp__active');
        popUp.classList.remove('popUp__active');
}, false);

它只适用于第一种形式。使用第二个、第三个等,它不起作用-弹出窗口不出现。
如果这是一种在jQuery中修复它的方法--这将是完美的,如果不是,但这是一种使它在vanilla js中工作的方法--我将非常感谢。

bqf10yzr

bqf10yzr1#

找到了!我甚至不知道vanilla js和jQuery可以一起工作。我知道他们是一样的

document.addEventListener( 'wpcf7mailsent', function( event ) {
  event.preventDefault(); 
 jQuery('#popUp').removeClass('popUp__active'); 
 jQuery('#popUpThanks').addClass('popUp__active');
}, false );

相关问题