【发布时间】:2015-05-18 14:14:13
【问题描述】:
在许多网站中,当我们向下滚动时会出现一个按钮。它说“顶部”。当我们点击它时,它会将我们带到页面顶部。
我的问题是:
我想在表格中具有类似的功能,但水平。
让我解释一下,我的应用程序中有一个包含 100 多列的表。因此,如果我想转到最后一列,则必须水平滚动直到到达最后一列。我正在使用 Jqgrid。 jqgrid 中是否有任何实现,只需单击按钮或其他内容即可将我们带到最后一列?有人试过吗?
【问题讨论】:
在许多网站中,当我们向下滚动时会出现一个按钮。它说“顶部”。当我们点击它时,它会将我们带到页面顶部。
我的问题是:
我想在表格中具有类似的功能,但水平。
让我解释一下,我的应用程序中有一个包含 100 多列的表。因此,如果我想转到最后一列,则必须水平滚动直到到达最后一列。我正在使用 Jqgrid。 jqgrid 中是否有任何实现,只需单击按钮或其他内容即可将我们带到最后一列?有人试过吗?
【问题讨论】:
这是一个可能的解决方案:https://jsfiddle.net/99x50s2s/38/
在你的 jqgrid 中添加一个自定义按钮,如 fiddler 所示,获取 'ui-jqgrid-bdiv' 类的宽度并在按钮单击事件上向右滑动,
.jqGrid('navButtonAdd', '#sg1' + "_toppager", {
caption: "See last column",
title: "Last Column",
onClickButton: function () {
$('.ui-jqgrid-bdiv').animate({
scrollLeft: $(this).width()
}, 'slow');
}
});
【讨论】:
$('.ui-jqgrid-bdiv') 应该被替换为$(this).closest('.ui-jqgrid-bdiv') 以防止滚动页面上的所有网格。应该在演示中做一些常见的事情(独立于主要问题):使用data: mydata 创建网格,而不是通过在循环中调用addRowData 来填充它,删除不需要的loadonce: true 和index 属性,使用数值对于height 和width,删除重复的id: "2" 数据。见jsfiddle.net/OlegKi/99x50s2s/40