2012-08-14 91 views
0

我想知道是否可以創建一個字符串並將其用作getElementsByClassName中的變量來獲取div的ID?我可以使用getElementsByClassName中的變量

<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; 
+0

肯定。爲什麼不嘗試一下?它不起作用嗎? – 2012-08-14 16:52:45

+0

你試過這個嗎?這對我來說似乎是可能的。 – 2012-08-14 16:52:53

+3

'var class_name =「1」+「currColor」;'小心 - 在「1」和「currColor」之間應該有一個空格。 – 2012-08-14 16:53:07

回答

1

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

但JavaScript區分大小寫,因此class_name是不一樣的class_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"; 
0

的原因你的代碼沒有工作是你正在尋找一個類1currColor的元素,但你真的是要尋找兩個類的元素。

您可以使用document.getElementsByClassName("1"+ " " + "currColor")注意兩個類之間的空間。這意味着找到我,同時包含類

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

相關問題