带有MVC3 url操作的jqGrid未启动

本文关键字:jqGrid 启动 操作 MVC3 url 带有 | 更新日期: 2023-09-27 18:24:13

我试图遵循最近更新的jqgrid和MVC3教程。我有这个脚本:

        myGrid.jqGrid({
            url: '<%= Url.Action("GridData") %>',
            datatype: 'json',
            mtype: 'POST',
            colNames: ['A', 'B', 'C'],
            colModel: [
                { name: 'A', index: 'A', key: true, width: 40
                },
                { name: 'B', index: 'B', width: 40
                },
                { name: 'C', index: 'C', width: 400
                }
            ],
            pager: '#pager',
            rowNum: 10,
            rowList: [5, 10, 20, 50],
            sortname: 'A',
            sortorder: 'desc',
            rownumbers: true,
            viewrecords: true,
            altRows: true,
            //altclass: 'myAltRowClass',
            height: '100%',
            gridview: true,
            jsonReader: { cell: "" },
            caption: 'Grid Title'
        });

我在Controllers文件夹中有一个控制器调用程序HomeController,里面有这个:

public JsonResult GridData(string sidx, string sord, int page, int rows)
    {
        return Json(new
        {
            total = 1, // we'll implement later 
            page = page,
            records = 3, // implement later 
            rows = (
                    new[] {
                        new[]{"A", "B", "C"},
                        new[]{"1", "2", "3"},
                        new[]{"X", "Y", "Z"}
            }).ToList()
        });
    }

由于某些原因,我无法调用GridData。我在控制器中设置了一个断点,它没有被击中。

我会错过什么?我需要以某种方式在项目中设置路由吗?

带有MVC3 url操作的jqGrid未启动

尝试将Url.Action()调用更改为:

<%= Url.Action("GridData", "Home") %>

仅供参考,这不是Razor语法。如果你确实在使用Razor,它会看起来像这样:

@Url.Action("GridData", "Home")

最后一点要问:JavaScript/jQuery代码在哪里?它是否嵌入到视图标记中?