0

从 4.7.1 移植到 4.8.0 时发现的一些问题:

  1. 分页 - 我使用 $(".ui-pg-input").val() 来查找“请求的”页面。我后来在有多个网格时使用了 $("#pg_"+pagerName).find('.ui-pg-input')[0].value 。现在这些都不起作用。无论网格状态如何,我都会不断得到“1”。(我需要它的原因是因为我正在使用不同的分页键构建 postData 并且需要在网格再次发布 Ajax 之前进行一些计算,因此需要在用户单击下一页时立即更改 postData )。所以这不再起作用了。

  2. 工具栏过滤器缺少右侧带有枚举值的 X(也就是在您需要从列表中选择的那些列上,没有 X 来重置过滤器)。

  3. 页面元素有一些变化。我添加了一个用于折叠/展开的按钮(是的,我知道内置的折叠/展开,但我隐藏了它,因为我需要用两个网格演奏手风琴,并且事件是在展开/折叠发生后触发的,而为了模拟手风琴,我需要在用户单击整个网格的展开/折叠时立即捕捉事件)。无论如何,以下内容:

    $(nameOfGrid).closest(".ui-jqgrid-view").find(".ui-jqgrid-titlebar>.ui-jqgrid-titlebar-close").hide();
        $(nameOfGrid).closest(".ui-jqgrid-view").find(".ui-jqgrid-titlebar>.ui-jqgrid-titlebar-close").after('<button id="' + gridName + 'headerButton" type="button" class="titlebutton" role="button" style="float:right; position:relative; font-size:12px; right:3px;">Collapse</button>');
    

仍在工作,但曾经很好地对齐到右边的东西,似乎一团糟,向下一行。与标题有关的任何变化吗?有没有另一种方法可以在展开/折叠发生之前在标题栏中捕捉展开事件?

  1. 在搜索对话框“searchGrid”(让您执行高级查询的那个,缺少关闭右上角的模式的 X。这是我尝试过的多个主题的情况。

  2. 我认为上栏的表格布局已更改。我在右侧的上栏中添加了一些(如新按钮等)调整,当屏幕很小时,似乎没有足够的空间放置它们。

  3. 我的网格宽度设置是:autowidth: true、shrinkToFit: true,但是,当通过 columnchooser 添加更多字段时,网格不会保持其宽度,并且变得越来越宽。事实上,底部的内部滚动条从未使用过 - 网格只是变得越来越宽,没有内部滚动。

  4. _toppager 一般有什么变化吗?(也可以解释上面的#5)。这段代码在 3.7.1 上运行良好,并在左上角生成了一个刷新图标,现在生成了 2 个图标,一个不工作(在左上角),另一个在上栏的中心低点,使条形高度加倍它的大小:

    $(nameOfGrid).jqGrid('navButtonAdd', nameOfGrid + '_toppager', { caption: "", buttonicon: "ui-icon-refresh", title: "refresh", onClickButton: function () { $(nameOfGrid). setGridParam({ postData:sessionListData($(nameOfGrid),gridName)}).trigger("reloadGrid"); } });

再次感谢您的出色工作:-)

4

1 回答 1

0

感谢您的反馈。在不改变现有结构的情况下实现新功能确实很困难。因此,一些 CSS 元素的内部结构在免费的 jqGrid 4.8 中确实发生了变化,不仅可以使用 jQuery UI 图标。请不要在以后发布累积的问题。此类问题可能会被搜索引擎错误地索引,因此其他用户很难找到答案。

1) 现有pager结构中的问题和jqGrid 4.8的变化在这里描述。我推荐使用第二个参数onPaging。我希望您能够轻松修改现有的onPaging.

2)过滤器工具栏的主要问题是输入/选择元素的宽度。如果一个使用searchOperators: true选项或一个使用默认clearSearch: true属性searchoptions,则搜索操作元素x将添加到搜索工具栏的每个元素中。它需要很多地方。在某些情况下,插入这些元素是多余的。在这种情况下,元素将默认隐藏。如果您确实需要显示x,您只需在您使用的列中添加显式 clearSearch: true属性。searchoptionsstype: "select"

3)您似乎对网格工具栏进行了一些自定义,并将标准图标替换<button>为文本Collapse。需要更改的定制对应于新的 CSS 结构并对应于您的确切要求。以下是此类实现的示例:

var $closeButton = $(nameOfGrid).closest(".ui-jqgrid-view").find(".ui-jqgrid-titlebar>.ui-jqgrid-titlebar-close");
$closeButton.css({width: "auto", height: "auto", top: "auto", marginTop: 0, position: "relative", float: "right"});
$closeButton.html('<button type="button" role="button" style="font-size:12px">Collapse</button>');
$closeButton.siblings(".ui-jqgrid-title").css({marginTop: "5px", display: "inline-block"});

4)我无法重现该问题。您可以尝试任何演示,例如这个。您可以看到关闭图标。因此,如果您确实有一些问题,您应该打开新问题并发布可用于重现问题的演示(例如在jsFiddle中)。

5)-6)您应该发布可用于重现问题的演示。当前对问题的描述不够详细,无法重现该问题。

于 2015-03-15T09:05:31.370 回答