私はこれで一生懸命努力しましたが、成功していません。
私のコントローラーは
public ActionResult CompOff()
{
return View();
}
[HttpPost]
public JsonResult CompOff(RegisterCompOff r)
{
var compoffs = db.RegisterCompOffs.Where(l => l.Employee.Id == this.EmployeeId).Select(l => new { l.CompOffDate, l.Description, l.ExpiryDate, l.IsApproved, l.IsUtilized }).ToList();
return Json(compoffs);
}
私の見解は
<table id="jqgProducts" cellpadding="0" cellspacing="0"></table>
<div id="jqgpProducts" style="text-align:center;"></div>
<script src="@Url.Content("~/Scripts/jquery.jqGrid.min.js")" type="text/javascript"></script>
<script type="text/javascript">
$(document).ready(function () {
$('#jqgProducts').jqGrid({
//url from wich data should be requested
url: '@Url.Action("CompOff")',
//type of data
datatype: 'json',
//url access method type
mtype: 'POST',
//columns names
colNames: ['CompOffDate', 'Description', 'ExpiryDate', 'IsApproved', 'IsUtilized'],
//columns model
colModel: [
{ name: 'CompOffDate', index: 'CompOffDate', align: 'left' },
{ name: 'Description', index: 'Description', align: 'left' },
{ name: 'ExpiryDate', index: 'ExpiryDate', align: 'left' },
{ name: 'IsApproved', index: 'IsApproved', align: 'left' },
{ name: 'IsUtilized', index: 'IsUtilized', align: 'left' }
],
//pager for grid
pager: $('#jqgpProducts'),
//number of rows per page
rowNum: 10,
//initial sorting column
sortname: 'CompOffDate',
//initial sorting direction
sortorder: 'asc',
//we want to display total records count
viewrecords: true,
//grid height
height: '100%'
});
});
</script>
コントローラーの post メソッドで json の結果を取得していますが、そのデータがグリッドにバインドされていません。ローカル データをバインドしようとすると、空のグリッドしか表示されません。これについて私を助けてください