Jquery 在colorbox中获得响应后更改位置

Jquery 在colorbox中获得响应后更改位置,jquery,jsp,colorbox,Jquery,Jsp,Colorbox,我正在开发一个模块,在该模块中,我选择一个公司名称,然后使用colorbox iframe弹出一个密码表单。当我输入密码并提交表单时,我得到json作为响应。现在我想关闭弹出窗口并将页面重定向到另一个页面。我的代码是 $(document).ready(function(){ var validator = $("#passwordverify").validate({ rules: { password: {

我正在开发一个模块,在该模块中,我选择一个公司名称,然后使用
colorbox iframe
弹出一个密码表单。当我输入密码并提交表单时,我得到
json
作为响应。现在我想关闭弹出窗口并将页面重定向到另一个页面。我的代码是

    $(document).ready(function(){
        var validator = $("#passwordverify").validate({ 
            rules: {  
                password: { 
                    required: true, 
                    minlength: 5 
                } 
            }, 
            messages: {  
                password: { 
                    required: "Provide a password", 
                    rangelength: jQuery.format("Enter at least {0} characters") 
                }
            },
            submitHandler: function() { 
                $.ajax({
                    url:"varifypassword.action",
                    type:"post",
                    dataType:"json",
                    data:{partyid:$("#partyid").val(), password:$("#password").val()},
                    success:function(response){
                        if(response.response == true)
                            {
                                  parent.$.fn.colorbox.close();
                                  window.location.replace("main.jsp");
                            }
                        else
                            {
                                $("#error").html("Incorrect Password");
                            }
                        }
                    }); 
            }
        });  

它工作正常,但是
窗口.位置.replace
对同一iframe工作。它在同一弹出窗口中打开
main.jsp
。如何将其加载到父页面的位置。

您是否已尝试使用其中一种方法

parent.$.fn.colorbox.close();
window.opener.location.href = mySite;


您可以向父窗口添加javascript方法

在iFrame之外添加以下方法

    function ChangeUrlFromParent(url)
    {
    document.location=url;
    }
   $(document).ready(function(){
    var validator = $("#passwordverify").validate({ 
        rules: {  
            password: { 
                required: true, 
                minlength: 5 
            } 
        }, 
        messages: {  
            password: { 
                required: "Provide a password", 
                rangelength: jQuery.format("Enter at least {0} characters") 
            }
        },
        submitHandler: function() { 
            $.ajax({
                url:"varifypassword.action",
                type:"post",
                dataType:"json",
                data:{partyid:$("#partyid").val(), password:$("#password").val()},
                success:function(response){
                    if(response.response == true)
                        {
                              parent.$.fn.colorbox.close();
                              ChangeUrlFromParent("main.jsp");
                        }
                    else
                        {
                            $("#error").html("Incorrect Password");
                        }
                    }
                }); 
        }
    });  
并从iFrame调用该方法

    function ChangeUrlFromParent(url)
    {
    document.location=url;
    }
   $(document).ready(function(){
    var validator = $("#passwordverify").validate({ 
        rules: {  
            password: { 
                required: true, 
                minlength: 5 
            } 
        }, 
        messages: {  
            password: { 
                required: "Provide a password", 
                rangelength: jQuery.format("Enter at least {0} characters") 
            }
        },
        submitHandler: function() { 
            $.ajax({
                url:"varifypassword.action",
                type:"post",
                dataType:"json",
                data:{partyid:$("#partyid").val(), password:$("#password").val()},
                success:function(response){
                    if(response.response == true)
                        {
                              parent.$.fn.colorbox.close();
                              ChangeUrlFromParent("main.jsp");
                        }
                    else
                        {
                            $("#error").html("Incorrect Password");
                        }
                    }
                }); 
        }
    });  

希望这有帮助:)

谢谢Christopher Will
window.parent.location.href=mySite为我工作。你好,iBoonZ,除了在这种情况下逻辑被移动到父窗口这一不吸引人的事实之外,函数将不在弹出窗口的范围内。要完成这项工作,您还需要向家长咨询。