我可以在getElementsByClassName中使用变量吗?

时间:2012-08-14 16:51:35

标签: javascript variables getelementsbyclassname

我想知道是否可以创建一个字符串并将其用作getElementsByClassName中的变量来获取div的Id?

<div id="000" class="item 1 currColor">
<div id="001" class="item 2 currColor">

var class_name = "1" + "currColor";
var get_color = document.getElementsByClassName(class_Name)[0].id;

3 个答案:

答案 0 :(得分:1)

是的,你可以:http://jsfiddle.net/6XZRf/

但javascript区分大小写,因此class_nameclass_Name不同。

此外,"1" + "currColor""1currColor"。您没有任何类"1currColor"的元素,您必须更改

<div id="000" class="item 1 currColor">
<div id="001" class="item 2 currColor">

<div id="000" class="item 1currColor">
<div id="001" class="item 2currColor">

或反过来,改变

var class_name = "1currColor";

var class_name = "1 currColor";

答案 1 :(得分:0)

您的代码不起作用的原因是您正在搜索类1currColor的元素,但您真的想要查找包含这两个类的元素。

您可以使用document.getElementsByClassName("1"+ " " + "currColor")注意两个类之间的空格。这意味着找到包含两个类的对象

答案 2 :(得分:0)

当然,但是你错过了类名之间的空间,

var class_name = "1" + "currColor";应为var class_name = "1" + " currColor";

但这对使用类更有意义,

//note the class name
var class_name = "item" + " currColor";
var get_color = document.getElementsByClassName(class_Name)[0].id;

这是simple demo