【问题标题】:On select Row doesn't activate event in jqgrid在选择行不会激活 jqgrid 中的事件
【发布时间】:2012-02-19 21:14:23
【问题描述】:

我有一个 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>

这里的Details和Grid是Name Controller中的控制器动作。连接到 onSelectRow 的详细信息返回一个视图,$('#NameDetails') 是此页面中最后一个 div 的 id。

我的问题是,即使其中的值已正确填充,我也无法看到出现的详细信息视图,我的 OnSelectRow 是否有问题或者我需要包含任何其他 javascript 文件??

【问题讨论】:

  • 谢谢 - 我正在寻找 onSelectRow 事件,您的代码示例帮助了我。 => +1

标签: c# asp.net-mvc-3 jqgrid


【解决方案1】:

这很愚蠢,但实际上我在一个名为“NameDetails”的 ID 中将拼写错误改为“NameDetalis”,这就是我的视图没有被渲染的原因。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2018-10-24
    • 2021-04-11
    • 1970-01-01
    • 1970-01-01
    • 2010-12-17
    相关资源
    最近更新 更多