jqgrid如何动态创建列

时间:2009-11-06 00:25:00

标签: model-view-controller jqgrid

我正在尝试在mvc中实现一个jquery,有几个关于此的教程,但我不希望jquery将列硬编码(或者事实上任何东西都要硬编码 - 这是逻辑应该在控制器中。

所以......看下面的代码,你会看到一个colNames:和colModel:我怎样才能编写这些代码,这样我就可以遍历一个Model,为每个列项添加一个列到网格中?最后我想要的是一个通用的jqGrid语句,唯一改变的是控制器中的代码!

Query("#list").jqGrid({
    url: '/Home/GetMovieData/',
    datatype: 'json',
    mtype: 'GET',
    colNames: ['id', 'Movie Name', 'Directed By', 'Release Date', 'IMDB Rating', 'Plot', 'ImageURL'],
    colModel: [
        **{ name: 'id', index: 'Id', width: 55, sortable: false, hidden: true },
        { name: 'Movie Name', index: 'Name', width: 250 },
        { name: 'Directed By', index: 'Director', width: 250, align: 'right' },
        { name: 'Release Date', index: 'ReleaseDate', width: 100, align: 'right' },
        { name: 'IMDB Rating', index: 'IMDBUserRating', width: 100, align: 'right' },
        { name: 'Plot', index: 'Plot', width: 55, hidden: true },
        { name: 'ImageURL', index: 'ImageURL', width: 55, hidden: true}],**
    pager: jQuery('#pager'),
    rowNum: 5,
    rowList: [5, 10, 20],
    sortname: 'id',
    sortorder: "desc",
    height: '100%', 
    width: '100%',
    viewrecords: true,
    imgpath: '/Content/jqGridCss/redmond/images',
    caption: 'Movies from 2008'
});