如何使用GridModel模式向jqGrid添加命令列?

时间:2013-09-08 08:07:52

标签: asp.net-mvc jqgrid grid jqgrid-asp.net

我已经搜索过,Trirand尽管提供了付费产品,却几乎没有提供有用的文档。

我正在使用服务器端代码来构建网格模型,即JQGridColumn个对象的集合,但当然这个对象没有文档:

Columns = new List<JQGridColumn>()
            {
                new JQGridColumn
                    {
                        DataField = "Id",
                        PrimaryKey = true, 
                        Editable = false,
                        Visible = false
                    },
                new JQGridColumn
                    {
                        DataField = "FileName",
                        HeaderText = "File Name",
                        Editable = false
                    },

这取自他们给出的例子。在使用JavaScript构建网格列的模式中有数百万个答案,我可能最终会设法翻译一个,但是现在,任何人都可以回答我的问题吗?

1 个答案:

答案 0 :(得分:0)

jqGrid是开源 JavaScript jQuery-plugin。可以在MIT许可下的商业产品中使用它。来自trirand.net的解决方案仅在内部使用相同的JavaScript。您可以将它与您为免费jqGrid找到的任何JavaScript代码混合使用。我建议你打开商业jqGrid生成的HTML页面的源代码并检查代码。如果你使用

<%= Html.Trirand().JQGrid(Model.OrdersGrid, "Grid") %>

然后你会找到

<table id='Grid'>

<script type='text/javascript'>
    jQuery(document).ready(function() {
        jQuery('#Grid').jqGrid({....});
    });
</script>

它将为您提供将一个解决方案映射到另一个解决方案的起点。

此外,我建议您检查“Cell Formatters / Templates(custom)”的代码,您可以在the demos的“功能”部分找到它。您将看到Controller可以使用CustomFormatter定义列模型。 CustomFormatter指定具有string属性FormatFunctionUnFormatFunction的对象,这些值是您在View部分中定义的全局JavaScript函数。您可以通过指定custom formatters的方式为您提供在网格列中调整任何自定义HTML片段的方式。