在 MVC 中,我有一个 WebGrid。此 WebGrid 使用称为 PaginatedList 的 ViewModel 填充。其中确实有实际的 ViewModel 集合,即 RequestViewModel 集合。
在特定事件上,我想使用 Jquery Post 将选定的 ViewModel(即 RequestViewModel)发送到 Controller。我不喜欢使用 $("form").Serialize() 发送整个集合。
请帮忙。谢谢你的时间。
编辑: 在控制器中:
var accessRequestViewModel=objAccessRequest.FetchAll();
var paginatedUAReqs=new PaginatedList<AccessRequestsViewModel>(accessRequestViewModel);
return view(paginatedUAReqs);
在视图中:
@model PaginatedList<RequestsViewModel>
var accessReqWebGrid= new WebGrid(model);
WebGrid.Column("ID");
WebGrid.Column("Name");
WebGrid.Column("Action");// This column has a drop down. On change of selection, jquery post has to be done. Sending the selected row as a model to controller.
在Javascript(Jquery)
$('select[name="Action"]').change(function () {
// Here I would like to send the viewmodel i.e AccessRequestViewModel object along with following Id and TextArea values
$.post(url, {USER_REQ_ID: $("#NotesRowId").val(), Notes: $("#commentsTxtArea").val(), Action: actionVal }, function (data) {
});
尝试的事情:
在 Javascript 中:
var AccessReqViewModel = {
REQ_ID: "10",
REQ_USER_NAME:"uausername"
}
$.post(url, {AR_ViewModel:AccessReqViewModel USER_REQ_ID: $("#NotesRowId").val(), Notes: $("#commentsTxtArea").val(), Action: actionVal }, function (data) {
});
在控制器中:
public ActionResult SaveActionNotes(AccessRequestsViewModel AR_ViewModel, int USER_REQ_ID, string Notes,string Action){}
断点被击中,但视图模型中的值不是我发送的值。