提交到外部URL并重定向?可能?

时间:2014-02-07 20:51:07

标签: javascript php forms redirect form-submit

所以我有这个表格提交给Docusign进行验证和安全签名。它从表单填充PDF数据,并且工作正常。

问题是,我希望在客户端验证并确认消息后重定向到另一个URL,但window.location.href无法正常工作。 (控制台日志和警报工作正常)。

我的表单是这样的:

<form action="https://demo.docusign.net/MEMBER/PowerFormSigning.aspx?PowerFormId=89-XXXXXX" method="POST" target="_blank" id="theLeaseForm" >
  .... 
</form>

我想通过header("Location: myOtherPage.php");使用PHP重定向提交表单。

我如何加入其中?

另外,你能告诉我为什么Javascript window.location方法不起作用,但其他JS函数在提交时运行正常吗?

这是我的JS代码:(注意最后一个onValid函数)..

$("#theLeaseForm").validVal({
    fields: {
        onInvalid: function( $form, language ) {
            $(this).addClass("invalid");
        },
        onValid: function( $form, language ) {
            $(this).addClass("valid");
        }
    }, form : {
        onInvalid: function( $fields, language ) {
            $(".errorbox").html("Please complete the fields marked in red and try again").show();
            var position = $(".errorbox").position();
            scroll(0,position.top);
                            window.location.href = 'http://www.identityseattle.com/thank-you/';
        },
        onValid: function() {
            console.log("form is successful"); //This works fine
            window.location.href = 'http://www.example.com/thank-you/'; //This doesn't work
        }
    }

});

1 个答案:

答案 0 :(得分:1)

找到解决方案..

我想问一个更好的问题是“在target =”_ blank“表单提交后的Javsscript重定向。

无论如何,settimeout工作得很好..

onValid: function() {
 setTimeout(function(){
     window.location.href = 'http://www.example.com/thank-you/'; 
     }, 1);
 }