返回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