【问题标题】:jqgrid form editing: invert column orderjqgrid表单编辑:反转列顺序
【发布时间】:2012-02-10 12:07:12
【问题描述】:

我一直在我的 asp.net Web 应用程序上广泛(并且成功地)使用 jqgrid。

是否可以在表单编辑中反转列顺序? 即:colmodel 显示

A 栏 B栏 C栏

我想展示类似的东西:

A 栏 C栏 B栏

当用户点击编辑图标并进入表单编辑对话框时。

编辑:我已阅读 remapColumns 函数存在 (check it out)。是否可以在表单编辑中使用它?

【问题讨论】:

    标签: jqgrid jqgrid-asp.net


    【解决方案1】:

    您可以根据以下简单代码更改列顺序的顺序

    beforeShowForm: function ($form) {
        var i, l, $tinfo = $form.find('tr.tinfo'),
            $trFormData = $form.find('tr.FormData');
        for (i = 1, l = $trFormData.length; i < l; i++) {
            $tinfo.after($trFormData[i]);
        }
    }
    

    the demo。结果你会得到

    而不是默认形式

    【讨论】:

    • oleg,对不起,这不是我要找的。在我看来,您只是颠倒了列顺序;我想重新创建表单字段顺序。你昨天写信让我使用 recreateForm:true,从那一刻起我一直在寻找一个例子:(
    • @frabiacca:你问我一条关于remapColumns 用法的评论。如果您更改列的顺序,请务必使用recreateForm:true(参见here 示例)来获得当前的列顺序。您当前的问题是“jqgrid 表单编辑:反转列顺序”。它不依赖于columnChooserreorderColumn 等的使用。如果还有其他一些额外的步骤,您需要表单对话框中的其他字段顺序 - 请描述
    • 嘿,oleg,我发现 formoptions 包含 rowpos 属性,这正是我想要的;)
    • @frabiacca:好的!我只是还没有完全理解你的问题。如果你真的有像 COLUMN A COLUMN B COLUMN C 这样的 tree 列并且你想指定 one column 的位置,你可以很好地使用@987654330 @。因此,如果您需要指定将放置列的字段的行,rowpos 是最好的方法,但您不能使用选项 to invert列顺序,因为如果要修改 colModel 并再插入一列,则必须修改 all rowpos 值所有列。所以这只是对您的要求的误解。
    • @frabiacca:不管怎样,你的问题解决了就好了!
    猜你喜欢
    • 2013-07-06
    • 1970-01-01
    • 1970-01-01
    • 2011-08-26
    • 1970-01-01
    • 1970-01-01
    • 2013-02-02
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多