如何将函数变量转换为div id名称?

时间:2014-02-26 09:19:40

标签: javascript

这就是我的工作:

function content() {
   var dd = document.getElementById("stuff1")
      dd.classList.toggle('disp');

}

<li onclick="content()"></li>

这就是我想要做的事情:

function content(x) {
   var dd = document.getElementById("x")
      dd.classList.toggle('disp');

}


<li onclick="content(stuff1)"></li>

但这不起作用。实现这个目标的正确方法是什么?

3 个答案:

答案 0 :(得分:4)

更改这些:

var dd = document.getElementById("x");
<li onclick="content(stuff1)"></li>

对于这些:

var dd = document.getElementById(x); // here x instead of "x"
<li onclick="content('stuff1')"></li> // here 'stuff1' instead of stuff1

注意:引号中的任何名称(单个或双重无关)被视为字符串,不带引号作为变量......

答案 1 :(得分:0)

您可以尝试删除这样的引号: -

var dd = document.getElementById(x);

而不是:

var dd = document.getElementById("x")

答案 2 :(得分:0)

其他答案都正确地说明您需要从getElementById来电中删除引号,以便:

var dd = document.getElementById(x);

还需要<{>>添加引号到content处理程序正文中的onclick来电:

<li onclick="content( 'stuff1' )"></li>

否则stuff1被视为变量名而不是字符串。