我有一个jqGrid,点击一行应该在jqGrid下面呈现局部视图,但它不会发生。我正在做一些如下所示的事情:
<script type="text/javascript" src="@Url.Content("~/Scripts/jquery.jqGrid.min.js")"></script>
<script type="text/javascript" src="@Url.Content("~/Scripts/jquery.cookie.js")"></script>
<script type="text/javascript" src="@Url.Content("~/Scripts/json2.js")"></script>
<script type="text/javascript" src="@Url.Content("~/Scripts/CookieManagement.js")"></script>
<script type="text/javascript" src="@Url.Content("~/Scripts/jQGridState.js")"></script>
<link href="@Url.Content("~/Content/jquery.jqGrid/ui.jqgrid.css")" rel="stylesheet" type="text/css" />
<script type="text/javascript">
$(document).ready(function() {
$(function() {
$('#Listing').jqGrid({
url: '@Url.Action("Grid", "Name")',
datatype: "json",
edit: false,
add: false,
del: false,
height: 330,
mtype: 'GET',
colNames: ['ID','Name'],
jsonReader: {
root: "Clients",
page: "CurrentPage",
total: "TotalPages",
records: "TotalRecords",
repeatitems: false,
cell: "",
id: "0"
},
colModel: [
{ name: 'Id', index: 'Id', width: 65, align: 'center', sorttype: "int" },
{ name: '@NameMap.STATUS_COLUMN', index: '@NameMap.STATUS_COLUMN', width: 140, align: 'left', sortable: true }],
pager: '#pager',
rowNum: 10,
rowList: [10, 15, 20],
sortname: 'Id',
sortorder: 'asc',
viewrecords: true,
gridview: true,
onSelectRow: function (id) {
$.ajax({
url: '@Url.Action("Details","Name")',
data: { 'Id': id },
success: function (detailsHtml) {
$('#NameDetails').html(detailsHtml);
},
dataType: 'html'
});
},
loadComplete: function () {
$('#NameDetails').html("");
}
});
});
});
</script>
此处详细信息和网格是名称控制器中的控制器操作。连接到onSelectRow的详细信息返回一个视图,$('#NameDetails')是此页面中最后一个div的id。
我的问题是我无法看到细节视图出现,即使其中的值正确填充,我的OnSelectRow有什么问题或者我是否需要包含任何其他javascript文件?
答案 0 :(得分:0)
这是愚蠢的,但实际上我在一个名为“NameDetails”的id中拼写错误为“NameDetalis”,这就是我的视图没有被渲染的原因。