从ajax调用加载视图,而不将值作为URL中的参数传递

时间:2017-06-05 17:37:35

标签: javascript c# jquery asp.net ajax

我的ASP.NET应用程序上有以下ajax调用

return false

此ajax调用进入以下Controller方法。

return $.ajax({
    cache: false,
    url: "../ControllerName/MethodName?var1=" + var2 + "&var2=" + var2,
    error: function (xhr) {
        alert("Error!")
    },
    success: function (result) {
        // Do something with the success.
        // Load a new View and pass the results to it.
    },
    async: true,
    processData: false
});

然后,当我处于ajax调用的成功部分时,我想重定向到新页面并将用户名和密码信息传递给新视图,而不将该信息放入URL作为参数。

我怎样才能做到这一点?

修改 我修改了第一个ajax调用的成功,调用了这个ajax:

public async Task<JsonResult> MethodName(string var1, string var2)
{
    // Do something here
    return Json(new
    {
        isRequestSuccessfull = true,
        userId = userId,
        password = password
    }, JsonRequestBehavior.AllowGet);
}

这是SharedController中的方法。

 $.ajax({
        url: "../Shared/Success",
        type: 'POST',
        data: { userName: userName, password: password  },
        dataType: 'html',
        contentType: 'application/json; charset=utf-8'

ajax调用会进入方法,但是当方法返回View时,它不会去那里,而是保留在主视图中。

0 个答案:

没有答案