我要做的是通过jQuery更改特定列的值。我只知道列的名称,但列的位置并不总是相同。
此代码正常运行,但这是检查和更改值的最佳方法吗?
var IDcolumns = document.getElementsByClassName('column-'+positionID);
for (i=0;i<IDcolumns.length;i++)
{
switch(IDcolumns[i].innerHTML){
case "yes":
//Just as example:
$(IDcolumns[i]).html('<img src="image.png" />');
break;
case "no":
$(IDcolumns[i]).html(' ');
break;
}
}
jsfiddle(显示/隐藏列)中的其他代码用于其他内容。
答案 0 :(得分:2)
根据HTML结构,有几种方法可以解决这个问题。
按照你的例子,你可以做一些简单的事情:
$('.column-'+positionID + ':contains("yes")').html('<img src="image.png" />');
$('.column-'+positionID + ':contains("no")').html(' ');
如果单元格包含文本(忽略空格和其他文本),:Contains将匹配。
答案 1 :(得分:1)
你可以在这里使用jQuery:
$('.column-'+positionID).each(function{
var html = $(this).html();
if(html == "yes")
$(this).html('<img src="image.png" />');
else if(html == "no")
$(this).html(' ');
});