返回RedirectToAction不返回新的视图

我有返回动作不同的控制器的方法。我正在使用return RedirectToAction并传递一个参数。该参数成功传递给另一个控制器。但它不会返回任何视图。该页面应该加载并返回一个新的视图。这里是我的代码:返回RedirectToAction不返回新的视图

控制器1:

public ActionResult Work(int id, int staffId) 

{

return RedirectToAction("CreateStaffWork", "Staff", new { id = staffId});

}

控制器2(职员):

public ActionResult CreateStaffWork(int id) 

{

Staff staffInfo= db.Staff.Find(id);

StaffInputModel newStaffWork = new StaffInputModel { StaffId = staffInfo.Id };

return View(newStaffWork);

}

它应该返回CreateStaffWork视图,但网页不刷新。运行代码时没有错误。我应该怎么做才能让视图返回?

我使用Ajax请求提交表单:

<script type="text/javascript"> 

$(document).ready(function() {

$("#LoadStaffListTable tbody").on('click', '.select', function (e) {

e.preventDefault();

$.ajax({

url: '/StaffWork/Work',

type: 'POST',

data: { id: $(this).data('id'), staffId: $(this).data('staffId') },

dataType: 'json',

}); // end ajax

});

});

回答:

正如评论所说,AJAX的目的是要留在同一个页面。如果您重定向到新页面,则只需使用适当的参数重定向到Work操作方法。

click事件处理程序更改为:

$("#LoadStaffListTable tbody").on('click', '.select', function(e) { 

location.href = '@Url.Action("Work", "StaffWork")?id=' + $(this).data('id') + '&staffId=' + $(this).data('staffId');

});

以上是 返回RedirectToAction不返回新的视图 的全部内容, 来源链接: utcz.com/qa/259206.html

回到顶部