我有一个表单,我试图在成功发送电子邮件后重定向到http://www.example.com
。我在其他设置中尝试了不同的方法,包括on_sent_ok
以及
if(jQuery('.wpcf7-mail-sent-ok').length > 0)
window.location.replace("http://stackoverflow.com");
在我的JavaScript中,但似乎没有效果。
编辑:我忘了提到用户点击提交后,我会做一个防止默认,以便进行一些计算并生成PDF。一旦完成,我就
$("form.wpcf7-form").unbind('submit').submit();
允许提交发生。这会导致重定向出现任何问题吗?
答案 0 :(得分:3)
联系表格7进行了ajax通话。成功后插入元素。然后你可以检查元素是否存在:
jQuery(document).ajaxComplete(function() {
if (jQuery('.wpcf7-mail-sent-ok').length) {
alert(1);
//window.location.replace("http://stackoverflow.com");
}
});
答案 1 :(得分:0)
好吧,也许我写的很晚,但是这段代码将会定义。 (如果你正在使用wordpress工作)。我到目前为止使用它并且它正常工作。
请记住将此代码放在您的函数文件中,最后请注意,您必须使用其中一个,而不是两个......!
add_action('wp_head', 'RedirectsCF7');
// Start of function.
function RedirectsCF7() {
if(is_page("contact-page-or-whatever-page-name-is")) {
echo "<script>document.addEventListener('wpcf7mailsent', function(event) {location = 'https://www.google.com/';}, false);</script>";
}
}
// Or simply add this code to all pages, like this.
if(!is_admin()) {
echo "<script>document.addEventListener('wpcf7mailsent', function(event) {location = 'https://www.google.com/';}, false);</script>";
}
}
参考here