如何将变量值作为documentGetElementByID

时间:2019-05-23 22:58:48

标签: javascript html

我有一个2D数组和一些数字值,所以我需要使用id使用document.getElementByID传递该值,我将设置一个称为Highlight的类。

我用有线嵌套循环读取数组元素并将其值传递给document.getElementByID,但问题是我需要在ID处加上双引号或单引号。如何在数组中加上引号。

for ( var i = 0; i < res.length; i++) { 
  for ( var j = 0; j < res.length; j++) {
     document.getElementById('res[i][j]').className = ('highlight');
    }   
  }

在这里,我将带引号的数组放在错误的位置,没有任何显示。那么如何在这种情况下传递ID?

3 个答案:

答案 0 :(得分:1)

您不需要引用ID名称。从括号中删除类名。见下文:

for ( var i = 0; i < res.length; i++) { 
  for ( var j = 0; j < res.length; j++) {
     document.getElementById(res[i][j]).className = 'highlight';
  }   
}

评论我是否想念任何东西。

答案 1 :(得分:1)

尝试.toString()。它将附加的数字转换为字符串。

for ( var i = 0; i < res.length; i++) { 
  for ( var j = 0; j < res.length; j++) {
     document.getElementById(res[i][j].toString()).className = ('highlight');
  }   
}

答案 2 :(得分:0)

  • 相同的替代代码样式
  • 使用“ + =”代替“ =”
  • 您确定第二个循环中没有错字吗?也许应该使用res[i]而不是res
    res.forEach(res2 =>
      res2.forEach(item =>
        document.getElementById(item.toString()).className += ' highlight'));