在$ .ajax回调中使用RedirectToAction是不可行的,因为$ .ajax是通过异步方式发送请求并接收响应,而RedirectToAction是用于在服务器端进行重定向操作的。
如果需要在$ .ajax回调中进行页面跳转,可以通过在回调函数中使用JavaScript来实现。以下是一种常见的实现方式:
public ActionResult MyAction()
{
// 处理逻辑...
string redirectUrl = Url.Action("TargetAction", "TargetController");
return Json(new { redirectUrl });
}
$.ajax({
url: '/Controller/MyAction',
type: 'GET',
success: function (data) {
if (data.redirectUrl) {
window.location.href = data.redirectUrl;
}
}
});
这样,在$ .ajax请求成功后,如果服务器端返回了跳转URL,前端就会通过JavaScript进行页面跳转。
需要注意的是,这种方式只适用于在$ .ajax回调中进行页面跳转,如果需要在其他场景中进行页面跳转,可以使用其他方法,如在服务器端直接返回跳转结果或使用其他前端框架的路由功能。
领取专属 10元无门槛券
手把手带您无忧上云