Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/471.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/html/73.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 制表机-表头排序_Javascript_Html_Tabulator - Fatal编程技术网

Javascript 制表机-表头排序

Javascript 制表机-表头排序,javascript,html,tabulator,Javascript,Html,Tabulator,我正在制作许多原始html表格,并使用 var table = new Tabulator("#main", { layout:"fitColumns", tooltipsHeader:true, pagination:"local", paginationSize:10, persistenceMode:"true", }); 并且必须禁用其中一些邮件的标题排序 类似问题的文档和答案都指向使用 {title:"Name", field:"name",

我正在制作许多原始html表格,并使用

var table = new Tabulator("#main", {
    layout:"fitColumns",
    tooltipsHeader:true,
    pagination:"local",
    paginationSize:10,
    persistenceMode:"true",
});
并且必须禁用其中一些邮件的标题排序

类似问题的文档和答案都指向使用

{title:"Name", field:"name", sorter:"string", headerSort:false}
对于要启用排序的列

我想做的是但不起作用

var table = new Tabulator("#main", {
    layout:"fitColumns",
    tooltipsHeader:true,
    pagination:"local",
    paginationSize:10,
    persistenceMode:"true",
    headerSorting:"false",
});

问题:我可以通过类似于上面代码的初始化参数禁用给定表上的排序吗,还是只能通过初始化每个列来禁用排序,这是我不想做的,因为表格数量很多,并且有不同的维度。

每次创建表格时,您都应该在列定义中给出
标题sort:false
,但是如果您确实想删除排序按钮,您可以运行下面的代码

const tabledata1=[{
id:1,
姓名:“奥利”,
金钱:“0”,
上校:“红色”,
dob:“
},
{
id:2,
姓名:“玛丽”,
金钱:“0”,
上校:“蓝色”,
dob:“14/05/1982”
},
{
id:3,
姓名:“克里斯汀”,
金钱:“0”,
上校:“绿色”,
dob:“22/05/1982”
},
{
id:4,
姓名:“布伦顿”,
金钱:“0”,
上校:“橙色”,
dob:“1980年8月1日”
},
{
id:5,
姓名:“玛格丽特”,
金钱:“0”,
上校:“黄色”,
dob:“31/01/1999”
},
];
const col1=[//定义表列
{
标题:“姓名”,
字段:“名称”,
宽度:150
},
{
标题:“金钱”,
字段:“金钱”,
对齐:“左”,
格式化程序:“钱”
},
{
标题:“最喜欢的颜色”,
字段:“col”
},
{
标题:“出生日期”,
字段:“dob”,
分拣机:“日期”,
对齐:“居中”
},
];
const col2=[//定义表列
{
标题:“姓名”,
字段:“名称”,
宽度:150,
校长:错
},
{
标题:“金钱”,
字段:“金钱”,
对齐:“左”,
格式化程序:“金钱”,
校长:错
},
{
标题:“最喜欢的颜色”,
字段:“col”,
校长:错
},
{
标题:“出生日期”,
字段:“dob”,
分拣机:“日期”,
对齐:“居中”,
校长:错
},
];
const table=新制表器(“示例表”{
height:205,//设置表的高度(在CSS中或此处),这将启用虚拟DOM并显著提高渲染速度(可以是任何有效的CSS高度值)
数据:tabledata1,//将数据分配给表
布局:“fitColumns”,//根据表格宽度调整列(可选)
列:col1
});
const removeArrow=函数(){
表2.setColumns(col2);
}
$(“#删除箭头”)。单击(函数(){
删除箭头();
});

更改列定义

找到了解决我问题的方法。没有额外的定义列

刚刚将此添加到我的th标签中:

<th tabulator-headersort="false" >@ColumnName</th>
@ColumnName
制表器获取元素上的属性,并完全按照我的要求执行

使用版本4.2供参考

@ColumnName
<th tabulator-headersort="false" >@ColumnName</th>
这样做的正确方法是什么 将Razor生成的HTML表转换为JS制表器表并关闭标题时。这些文档在tablator-HTML属性的使用方面做得不太好,因此有些人可能不这么认为


制表器4.2中有一个错误修复,因此camelcased属性可以用于HTML>制表器转换。制表器headerSort就是一个在4.2 bufix之前不起作用的例子。这是一种基于razor模型返回的内容定制表的非常简洁的方法,而不是在JS中完成所有的工作

,虽然它删除了箭头,但不会禁用标题排序操作。如果可以的话,我会把haederSort:false包括在内。但是我的表有变化,根据用户的要求可以有不同的列。我试图避免定义每一种类型的表及其列,并在将来维护它。我将实现此版本,然后再与您联系。谢谢你的回答!制表器库中没有表格和/或,可能您使用的是不同的库您误解了我。我所做的是用简单的html表格创建表格。然后我用制表器把我的基本的普通表格转换成制表器表格。ColumnA ColumnB Lorem Ipsum Dolor Sit,然后var table=新制表器(“#MainTable”,{layout:“fitColumns”,tooltipssheader:true});