免费 jqGrid - 排序顺序问题
Free jqGrid - Sorting order issue
直到今天我都在使用 4.10。我现在升级到 4.13(最新)所以做一些回归。
我首先注意到的是多重排序。
在4.10中,多排序是按照列的顺序(从左到右)。
在 4.13.5(最新)中,排序顺序是先选择哪一列。
正确的行为 (IMO) 应该按列的顺序排列,因此如果对列重新排序,最左边的列将接管并成为应用排序的第一个元素。
排序基于 "first selected, always first" 的当前新行为令人困惑,因为用户无法判断应用多重排序的顺序。
解释:
查看下面的 2 个表格,您可以看到它们按两列排序,'Total Runs' & 'Start Time':
两个表都包含完全相同的数据,以完全相同的方式排序,但仍然显示不同的排序结果。
不同结果的原因是,排序索引是按照用户点击排序的顺序构建的,而不是按照列的顺序构建的(最左边的接管了指数)。这不符合标准,因为用户无法确定在这样的多列搜索中哪一列是两列中的主列。在 4.10 中,顺序是固定的,因此如果用户想要更改顺序,他必须将列向右(或向左)移动。至少这给出了一些指示,哪一列排在第一位。
我并不是说使用列对多搜索进行排序是最佳做法,但至少它给出了一些指示。在当前的实施中,没有任何迹象表明会发生什么。这在加载 pre-define 过滤时尤其令人困惑。
谢谢,
总计
首先,免费的jqGrid最新版本是4.13.6。它发布于 10 天前 (2016-12-24)。版本 4.13.5 于 2016 年 11 月 3 日发布。
多重排序 (multiSort: true
) 情况下的排序顺序对最终结果很重要。 用户 应该能够指定得到结果的顺序,he/she 想要得到的结果。旧行为不允许用户自由。因此,行为是固定的。如果您在 sortname
中指定顺序,那么应该注意列的顺序。字符串
p.sortname + " " + p.sortorder
定义顺序,用于排序。如果你真的需要一些固定的排序顺序,那么你可以尝试 "normilize" p.sortname
在 onSortCol
回调中。
直到今天我都在使用 4.10。我现在升级到 4.13(最新)所以做一些回归。
我首先注意到的是多重排序。
在4.10中,多排序是按照列的顺序(从左到右)。
在 4.13.5(最新)中,排序顺序是先选择哪一列。
正确的行为 (IMO) 应该按列的顺序排列,因此如果对列重新排序,最左边的列将接管并成为应用排序的第一个元素。
排序基于 "first selected, always first" 的当前新行为令人困惑,因为用户无法判断应用多重排序的顺序。
解释:
查看下面的 2 个表格,您可以看到它们按两列排序,'Total Runs' & 'Start Time':
两个表都包含完全相同的数据,以完全相同的方式排序,但仍然显示不同的排序结果。
不同结果的原因是,排序索引是按照用户点击排序的顺序构建的,而不是按照列的顺序构建的(最左边的接管了指数)。这不符合标准,因为用户无法确定在这样的多列搜索中哪一列是两列中的主列。在 4.10 中,顺序是固定的,因此如果用户想要更改顺序,他必须将列向右(或向左)移动。至少这给出了一些指示,哪一列排在第一位。
我并不是说使用列对多搜索进行排序是最佳做法,但至少它给出了一些指示。在当前的实施中,没有任何迹象表明会发生什么。这在加载 pre-define 过滤时尤其令人困惑。
谢谢,
总计
首先,免费的jqGrid最新版本是4.13.6。它发布于 10 天前 (2016-12-24)。版本 4.13.5 于 2016 年 11 月 3 日发布。
多重排序 (multiSort: true
) 情况下的排序顺序对最终结果很重要。 用户 应该能够指定得到结果的顺序,he/she 想要得到的结果。旧行为不允许用户自由。因此,行为是固定的。如果您在 sortname
中指定顺序,那么应该注意列的顺序。字符串
p.sortname + " " + p.sortorder
定义顺序,用于排序。如果你真的需要一些固定的排序顺序,那么你可以尝试 "normilize" p.sortname
在 onSortCol
回调中。