2016-12-07 10 views
1

이메일을 성공적으로 보내면 http://www.example.com으로 리디렉션하려고하는 양식이 있습니다. 나는 다른 추가 설정에서 on_sent_ok 등의 방법뿐만 아니라 내 자바 스크립트에서문의 양식 7 이메일로 리디렉션하지 않음

if(jQuery('.wpcf7-mail-sent-ok').length > 0) 
window.location.replace("http://stackoverflow.com"); 

을 시도했다, 그러나 그것은 잘 작동하지 않는 것 같습니다.

편집 : 사용자가 제출을 클릭하면 계산을 수행하고 PDF를 생성하기 위해 기본값을 방지한다고 언급하는 것을 잊었습니다. 이 모두 완료되면 내가 제출이 일어날 수 있도록

$("form.wpcf7-form").unbind('submit').submit(); 

을한다. 이로 인해 리디렉션에 문제가 발생할 수 있습니까?

+0

나는 문의 양식 7에 대해 아무것도 몰라하지만이 제출 한 후 리디렉션 몇 가지 설정을하지 말았어야? 나는 이것을 docs : http://contactform7.com/redirecting-to-another-url-after-submissions/에서 발견했다. ** 편집 : ** 오, nvm, 나는 당신이 그것이 작동하지 않는다고 말한 것으로 나타났습니다. –

+1

on_sent_ok 형식을 올바르게 사용하고 있습니까? 내가 올린 링크에 따라'on_sent_ok : "location = 'http://stackoverflow.com/';"이어야합니다. –

+0

방금 ​​시도했지만 불행히도 작동하지 않았습니다 – mikepsb

답변

2

문의 양식 7은 아약스 전화를했다. 성공 후 요소가 삽입됩니다.

jQuery(document).ajaxComplete(function() { 
    if (jQuery('.wpcf7-mail-sent-ok').length) { 
    alert(1); 
    //window.location.replace("http://stackoverflow.com"); 
    } 
}); 
+0

완벽하게 작동했습니다. 정말 고마워요! 며칠 동안 내 문제를 해결했습니다. – mikepsb

0

글쎄, 어쩌면 내가 늦게 쓰고 있어요,하지만이 코드는 definitelly 일을 할 것입니다 것입니다 : 그럼 당신은 요소가 존재하는지 확인할 수 있습니다. (당신이 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