0

我想知道是否可以创建一个字符串并将其用作 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;
4

3 回答 3

1

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

但是 javascript 区分大小写,因此class_nameclass_Name.

此外,"1" + "currColor""1currColor"。你没有任何带有 class 的元素"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";
于 2012-08-14T16:57:01.733 回答
0

您的代码不起作用的原因是您正在搜索具有类的元素,1currColor但您实际上是要查找具有两个类的元素。

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

于 2012-08-14T16:57:09.800 回答
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;

这是一个简单的演示

于 2012-08-14T17:05:18.240 回答