我以table.rows.length的形式循环遍历一个表,在其中循环一个rows.cells.length,当某个单元格满足特定的条件时,我想将该单元格的一个属性设置为该单元格的html。
我知道你可以改变innerHTMl
var x = document.getElementById("myTable").rows[0].cells;
x[0].innerHTML = "NEW CONTENT";所以我想这场战争就像
x[0].attr = ('name', 'value');但没有这样的运气。
谁能帮我指出正确的方向吗?
如果有任何资源,您可以推荐给一个完整的列表,所有的选项,您可以添加到一个单元格,这将是伟大的!
发布于 2017-10-30 14:22:53
因为您是直接使用HTML节点操作的,所以您处理的是HTMLElement对象,而这些对象又是从通用元素继承来的。
从文档中可以看到--您可以通过Element.attributes映射访问属性,每个属性都是具有name和value属性的Attr对象。
所以正确的方法是使用:
x[0].setAttribute('name', 'value');发布于 2017-10-30 14:28:44
使用jQuery和es6语法时,可以使用map函数:
var xtr = $('#mytable tr');
xtr.map(itr => {
xtd = $(itr).children('td');
xtd.map(itd => {
$(itd).attr('key', 'value');
});
});如果这让您感到困惑,您可以用旧的方式使用for循环:
var xtr = $('#mytable tr');
for(i in xtr){
xtd = $(xtr[i]).children('td');
for(j in xtd){
$(xtd[j]).attr('key', 'value');
}
}在使用jQuery时,要做的是:
$('element').attr('key', 'value');https://stackoverflow.com/questions/47017475
复制相似问题