使用yadcf 0.8.9和datatables 1.10.10,我有一个DataTable,其中包含Product的排序选项(如https://sharepointupdates.com/Patches所示)。在Chrome(x64,Windows,当前版本)中,选项无序(' SharePoint Foundation 2010',然后' AppFabric 1.1')。 Internet Explorer 11,Edge和Firefox(x64,Windows,当前版本)都以正确的字母顺序排序顺序显示“产品”下拉列表,该顺序也恰好是页面上定义的排序顺序。
yadcf.init(table, [
{
column_number: 1,
data: [
{
value: 'AppFabric 1.1',
label: 'AppFabric 1.1'
},
{
value: 'FAST Search Server 2010',
label: 'FAST Search Server 2010'
}, [...]
{
value: 'SharePoint Foundation 2010',
label: 'SharePoint Foundation 2010'
},
{
value: 'SharePoint Foundation 2013',
label: 'SharePoint Foundation 2013'
},
我正在寻找能够解决Chrome问题的方法,或者为什么Chrome会有不同的行为。
答案 0 :(得分:1)
您应该使用df = pd.DataFrame.from_dict(map(dict,df_list))
作为该过滤器,(read docs)
至于为什么它只发生在Chrome中 - 我猜它在数组上的排序函数是不同的,或者是唯一尝试用对象排序数组的浏览器(我想其他人从一开始就放弃了)
P.S
由于您的值/标签具有相同的值,您可以使用更简单的sort_as: 'none'
- 字符串数组,这样您就不需要使用data
,因为浏览器应该能够对数组进行排序正确的字符串