0

我的 js 文件中有 2 个函数用于 2 个按钮。当我尝试:

 return Json("_ThanksForLogin");

它不会进入 js 文件,也不会进入 ajax 的成功。单击按钮时,它只会在对话框中显示字符串“_ThanksForLogin”。我应该怎么办?

我的功能:

 $(function () {
    $("#loginBtn").click(function () {


        var user = getUser();

        // poor man's validation
        if (user.Username == null) {
            alert("please enter username.");
            return;
        }
        if (user.Password == null) {
            alert("please enter password.");
            return;
        }

        var json = $.toJSON(user);
        $.ajax({
            url: '/Members/MemberLoginPartial/LoginUser',
            type: 'POST',
            dataType: 'json',
            data: json,
            contentType: 'application/json; charset=utf-8',
            success:
                     function (address) {

                         $("#resultMessage").load(address);
                         setTimeout(function () { $("#resultMessage").dialog("close") }, 1000);
                         location.href = "/Members/Members/Index";
                     },
            close: function (event, ui) {
                location.href = "/Members/Members/Index"
            }
        });

    });
});

我想通过返回 json()将“_ThanksForLogin”部分视图的地址发送到这部分:

 success:
           function (address) {

             $("#resultMessage").load(address);
             setTimeout(function () { $("#resultMessage").dialog("close") }, 1000);
             location.href = "/Members/Members/Index";
          },

之后,对话框会自动关闭并重定向到用户配置文件。感谢您的帮助...

4

1 回答 1

1

Json()应该返回JSON,而不是 html。你需要的是

return PartialView(_ThanksForLogin)

这将返回PartialView名为“_ThanksForLogin”。

于 2012-11-26T10:22:37.960 回答