Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/meteor/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Wordpress 联系表格7-在发送电子邮件时添加自定义功能_Wordpress_Contact Form 7 - Fatal编程技术网

Wordpress 联系表格7-在发送电子邮件时添加自定义功能

Wordpress 联系表格7-在发送电子邮件时添加自定义功能,wordpress,contact-form-7,Wordpress,Contact Form 7,只是在玩Wordpress/联系表单7 是否可以在成功的电子邮件发送事件中添加自定义javascript功能?在联系人表单配置页面底部的其他设置中写入此内容: on_sent_ok: "some js code here" 更新: 您可以使用它调用如下函数: on_sent_ok: "your_function();" $(document).on('spam.wpcf7', function () { console.log('submit.wpcf7 was triggered!

只是在玩
Wordpress/联系表单7



是否可以在成功的电子邮件发送事件中添加自定义javascript功能?

在联系人表单配置页面底部的其他设置中写入此内容:

on_sent_ok: "some js code here"
更新: 您可以使用它调用如下函数:

on_sent_ok: "your_function();"
$(document).on('spam.wpcf7', function () {
    console.log('submit.wpcf7 was triggered!');
});

$(document).on('invalid.wpcf7', function () {
    console.log('invalid.wpcf7 was triggered!');
});

$(document).on('mailsent.wpcf7', function () {
    console.log('mailsent.wpcf7 was triggered!');
});


$(document).on('mailfailed.wpcf7', function () {
    console.log('mailfailed.wpcf7 was triggered!');
});
或者编写一些代码(此代码重定向至感谢页面):


示例1:

on_sent_ok: "location = 'http://mysite.com/thanks/';"
示例2: 格式脚本:

<div id="hidecform">
<p>You name<br />
    [text* your-name] </p>
...
</div>

Contact Form 7会向document对象发出大量的Javascript事件。在4.1版中,它们可以在contact-form-7/includes/js/scripts.js中找到。如果您使用的是jQuery,则可以访问以下事件:

on_sent_ok: "your_function();"
$(document).on('spam.wpcf7', function () {
    console.log('submit.wpcf7 was triggered!');
});

$(document).on('invalid.wpcf7', function () {
    console.log('invalid.wpcf7 was triggered!');
});

$(document).on('mailsent.wpcf7', function () {
    console.log('mailsent.wpcf7 was triggered!');
});


$(document).on('mailfailed.wpcf7', function () {
    console.log('mailfailed.wpcf7 was triggered!');
});
试试这个:

$( document ).ajaxComplete(function( event,request, settings ) {
   if($('.sent').length > 0){
       console.log('sent');
   }else{
       console.log('didnt sent');
   }

});

只是一个简短的提示,on_sent_ok已被弃用

联系人表单7现在使用事件侦听器,如下所示

<script type="text/javascript">
  document.addEventListener( 'wpcf7mailsent', function( event ) {
      if ( '11875' == event.detail.contactFormId ) { // if you want to identify the form
       // do something
      }
  }, true );
</script>

也许这对我有好处,我可以把JS函数放在这里吗?我不确定它是否有一些长度限制,我个人只想调用单独js文件中的javascript函数。@AamirShahzad检查您的浏览器控制台是否有任何可能阻止javascript执行的javascript错误。@digiout您可以这样设置表单
[text*name id:your name]
然后在
on_sent_ok
使用jQuery获取它的值,就像这样
jQuery(“#你的名字”).val()
@SunilGarg
你的函数需要在页面上的任何地方或页面上包含的javascript文件中定义。它与任何其他javascript函数一样,只需要在调用之前定义它。@likesalom是否有类似于.on('submit.wpcf7……。我之所以这样问,是因为我使用的是:
on_sent_ok:$('hideform').hide();$('wpcf7-form.sent p').hide();page_redirect()
但它似乎在100%的时间内都不起作用???@alex您可以使用jQuery:mailsent侦听提交事件。wpcf7和wpcf7:mailfailed已被弃用。
add_action( 'wp_footer', 'wp1568dd4_wpcf7_on_sent' );

function wp1568dd4_wpcf7_on_sent() { 
  // the script above
}