5

我对 ajaxSubmit 有疑问...问题是,当我提交表单并从 PHP 获得具有window.location脚本的响应时,页面根本不会改变...

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

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

这是我的代码:

$("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 参数是否有任何属性可以解决这个问题?

4

1 回答 1

2

只需在您的服务器答案中提供不带 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;
});
于 2012-10-26T09:02:03.017 回答