2012-02-06 48 views
0

我有一個類爲設置一個新的ID一類在JavaScript

<div class="group-left article_left"> 

我需要添加一個ID爲該類使用JavaScript動態。

我已經添加以下代碼

var thediv = document.getElementByClass("#group-left"); 
    thediv.id = "pad_id"; 

但ID沒有出現在我的code.Can任何人幫助我。

+0

你的意思是像'document.getElementsByClassName('group-left')[0]''? – 2012-02-06 15:46:05

+0

是的,記住英鎊符號'#'用於id。還要記住,ID應該是獨一無二的。如果您重複您的ID,您可能會遇到一些奇怪的問題。 – 2012-02-06 15:53:05

回答

0

現在有getElementsByClass方法在JavaScript中,除非你使用一些庫。你可以使用jquery

$('.class').attr('id','pad_id'); 

你應該只使用一個id每個元素,但。請記住,

+0

[如果你拼寫正確。](http://www.w3.org/TR/html5/ dom.html#dom-document-getelementsbyclassname) – Quentin 2012-02-06 15:48:04

+0

該標記是JavaScript而不是jQuery ... – xandercoded 2012-02-06 15:48:09

-1

你必須使用setAttribute,像這樣的:

thediv.setAttribute("id", "pad_id"); 
+0

不,'id'屬性工作得很好......如果你在HTMLElementNode而不是'undefined'上使用它[ – Quentin 2012-02-06 15:49:26

1

該方法被稱爲getElementsByClassName並返回一個NodeList,而不是一個單一的節點(所以你需要把它作爲一個數組,並且要麼循環它,要麼只是抓住它的第一個元素)。

您還需要正確拼寫您的班級名稱。您沒有#字符。

var thediv = document.getElementsByClassName("group-left")[0]; 
thediv.id = "pad_id"; 

isn't supported by Internet Explorer 8 or lower所以你不妨使用具有同等功能的填充工具或庫(比如YUI或其他任何實施a selector engine)來代替。