我想通过Javascript为动态创建的表格中的单元格上色

时间:2018-09-05 10:31:17

标签: javascript jquery css

我想通过Javascript创建HTML表。之后,我需要为表格的某些单元格(td)着色。

for( var i=0; i<rows;i++)
{
    indx=i+1;
    tbody += '<tr>';
    for( var j=0; j<cols;j++)
    {
        tbody += '<td>';
        if(counter<n){
            debugger;

            factor=is_Semi_Prime(indx);

            if(factor[0].toString().length==factor[1].toString().length&&factor[0]!=-1)
                tbody+="&nbsp&nbsp&nbsp"+indx+":"+"<br>"+factor[0]+", "+factor[1];
            else
                tbody+="&nbsp&nbsp&nbsp"+indx+":"+"<br>";//here i need to paint this cell in green
        }
        else
            tbody+="&nbsp&nbsp&nbsp";//and here in white 

            tbody += '</td>'

            indx+=rows;
    }

    tbody += '</tr>\n';

}

var tfooter = '</table>';
str+=(theader + tbody + tfooter);
res.html(str); 

}

这是表创建和数据的一部分

1 个答案:

答案 0 :(得分:0)

如果要在创建表后对表中的某些特定TD进行样式设置,则可以使用以下代码来访问TD:

document.querySelector("table>tbody>tr+tr>td+td").style["background-color"] = 'green';

您可能想在querySelector方法中预构建该字符串。您可以简单地增加要添加的TR和TD的数量。上面的示例代码将第二列和第二行的TD的背景颜色更改为绿色。 当然,您可能需要为要引用的特定表定义特异性。