Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/loops/2.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_Jquery - Fatal编程技术网

Javascript 如何给表标题赋值?

Javascript 如何给表标题赋值?,javascript,html,jquery,Javascript,Html,Jquery,上下文 我有一张桌子,里面有页码。我想“在表头单击,按列排序”。我必须使用添加的order by'column'进行查询,因为我一次只能获取50行。因此,在表中排序将不起作用。目前我通过给每个th不同的ID来实现这一点。但我想用类来实现这一点。如果th可以保存值,这是可能的。但似乎不行 问题 如何将任意字符串与HTML元素关联?您只需获取cellIndex即可 const myTable=document.getElementById('my-table')) ; myTable.onclic

上下文

我有一张桌子,里面有页码。我想“在表头单击,按列排序”。我必须使用添加的
order by'column'
进行查询,因为我一次只能获取50行。因此,在表中排序将不起作用。目前我通过给每个
th
不同的ID来实现这一点。但我想用类来实现这一点。如果
th
可以保存值,这是可能的。但似乎不行

问题


如何将任意字符串与HTML元素关联?

您只需获取cellIndex即可

const myTable=document.getElementById('my-table'))
;
myTable.onclick=e=>
{
如果(!e.target.matches('thead td'))返回
设TD=e.target
TD.className=(TD.className==“”)?“上档”:(TD.className===”上档“)?“下档”:“”;
控制台清除()
log('col index=',TD.cellIndex',order=',TD.className',text=',TD.textContent)
}
/*外观零件*/
桌子{
边界塌陷:塌陷;
边缘顶部:25px;
字体系列:Arial、Helvetica、无衬线字体;
字体大小:10px;
}
泰德{
背景颜色:海蓝宝石;
光标:指针;
}
t车身{
背景色:#b4c5d8;
}
运输署{
边框:1px纯灰;
填充:.3em.7em;
}
thead td>i.fa{display:none;}
thead td.upOrder>i.fa-caret-up{display:inline;}
thead td.downOrder>i.fa-caret-down{display:inline;}

第0列
上校1
col_2
榆树林0榆树林1榆树林2
榆树林0榆树林1榆树林2
榆树林0榆树林1榆树林2
榆树林0榆树林1榆树林2

如果要将任意字符串与HTML元素(如
th
)关联,可能需要使用

您可以在HTML中设置一个名为“my string”的自定义属性,方法是:

<th data-my-string="Mal shot first">...
您可以将该值用于:

let str = myHeader.dataset.myString; // Note the unusual syntax
.dataset
属性包含所有数据属性(每个属性都从烤肉串案例转换为camelCase,并删除了
数据-
前缀)


(我不确定你所说的“我想用类来实现这一点”是什么意思,但由于你表示“如果
th
可以保存值,这是可能的”,我想你可能会发现这项技术很有用。)

这有点模糊。举一个简单的例子(此处建议->),如果您想将任意字符串与HTML元素(如
th
)关联,您可能需要使用
数据属性
()。您可以在HTML中使用
(或在脚本中使用
myHeader.setAttribute(“数据我的字符串”,“错误快照优先”);
)设置一个名为“我的字符串”的自定义属性。您可以使用带有
let str=myHeader.dataset.myString
的值--
dataset
属性包含所有的数据属性(从烤肉串转换为camelCase,去掉
data-
前缀)。@Cat您可以将此作为答案发布吗?当然可以。如果您使用的是jQuery,您可以通过以下方法获取/设置:;获取
$(某物).data(“myString”)
,设置
$(某物).data(“myString”,“123”)
let str = myHeader.dataset.myString; // Note the unusual syntax