chrome更新后chrome和$ .ajax下的奇怪行为

时间:2015-05-25 12:31:46

标签: javascript jquery ajax google-chrome

我在登录页面上执行以下Ajax调用的asp.net mvc5应用程序

$(document).ready(function () {

    var formObj = $(".login-form");

    $("form input[name=username]").val("user");
    $("form input[name=password]").val("password1!");

    formObj.submit(function (event) {
        event.preventDefault();
        console.log("test");

        validator = formObj.validate();

        if (validator.checkForm()) {

            var form = formObj.get();

            var rememberMe = $("input:checkbox[name=remember]:checked").val() ? true : false;
            $(form.rememberMe).val(rememberMe);

            args = {
                form: form,
                userName: $(form.username).val(),
                password: $(form.password).val(),
                remember: rememberMe
            }

            var url = @Url.Content("~/api/auth");
            func = $.ajax({
                url: url,
                data: args,
                success: function (data) {
                    console.log("success")
                    if (data["ResponseStatus"]["ErrorCode"] == null) {

                        @if(Request.Params.Get("redirect") != null)  {
                        <text>
                        window.location = "@Request.Params.Get("redirect")";
                        </text>
                    }
                    else
                    {
                        <text>
                        window.location = "@Url.Content("~/Home")";
                        </text>
                    }
                    }
                }
            });
            }
    });

});

如果我把这段代码

var url = @Url.Content("~/api/auth");

它可以工作,否则如果我引用url字符串(因为它应该是正确的)

var url = "@Url.Content("~/api/auth")";
它挂起了浏览器。

这只发生在chrome下,因为Chrome版本43.0.2357.65 m报告了第一个iussue

有什么问题?

由于

更新#1

我注意到问题就在那里

               $.ajax({
                url: "/someurl",
                data: args,
                success: function (data) {
                    console.log("success")
                    if (data["ResponseStatus"]["ErrorCode"] == null) {


                        window.location = "/someotherurl/";

                    }
                }
            });

如果我起诉ajax它就会破坏......如果我使用$ .post或$ .get它就有效......

0 个答案:

没有答案