响应时带有window.location的AjaxSubmit

时间:2012-10-26 08:31:43

标签: javascript jquery ajax redirect window.location

我遇到ajaxSubmit的问题...问题是,当我提交表单并从PHP获得带有 window.location 脚本的响应时,页面不会更改在所有......

我的PHP脚本只在正确提交表单时返回一个带有window.location的脚本,否则返回一个在成功函数上解析的JSON。

使用Chrome的工具,我看到它在网络标签上加载了window.location网址,但是它没有向用户显示...

这是我的代码:

$("form").submit(function(e) {
    e.preventDefault();
    $("form").ajaxSubmit({
        success: function(resp){
            try{
                resp=JSON.parse(resp);
                alert(resp["error"]);
            } catch(e){
                $("<div></div>").html(resp);
            }

        }
    });
    return false;
});

如何使其发挥作用? AjaxSubmit的options参数有没有可以解决的问题?

1 个答案:

答案 0 :(得分:1)

只需在服务器答案中提供不带JS代码的URL,然后执行:

$("form").submit(function(e) {
    e.preventDefault();
    $("form").ajaxSubmit({
        success: function(resp){
            try{
                resp=JSON.parse(resp);
                window.location.href = resp;
            } catch(e){
                $("<div></div>").html(resp);
            }

        }
    });
    return false;
});