我有一個類爲設置一個新的ID一類在JavaScript
<div class="group-left article_left">
我需要添加一個ID爲該類使用JavaScript動態。
我已經添加以下代碼
var thediv = document.getElementByClass("#group-left");
thediv.id = "pad_id";
但ID沒有出現在我的code.Can任何人幫助我。
我有一個類爲設置一個新的ID一類在JavaScript
<div class="group-left article_left">
我需要添加一個ID爲該類使用JavaScript動態。
我已經添加以下代碼
var thediv = document.getElementByClass("#group-left");
thediv.id = "pad_id";
但ID沒有出現在我的code.Can任何人幫助我。
現在有getElementsByClass方法在JavaScript中,除非你使用一些庫。你可以使用jquery
$('.class').attr('id','pad_id');
你應該只使用一個id每個元素,但。請記住,
[如果你拼寫正確。](http://www.w3.org/TR/html5/ dom.html#dom-document-getelementsbyclassname) – Quentin 2012-02-06 15:48:04
該標記是JavaScript而不是jQuery ... – xandercoded 2012-02-06 15:48:09
你必須使用setAttribute
,像這樣的:
thediv.setAttribute("id", "pad_id");
不,'id'屬性工作得很好......如果你在HTMLElementNode而不是'undefined'上使用它[ – Quentin 2012-02-06 15:49:26
該方法被稱爲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)來代替。
你的意思是像'document.getElementsByClassName('group-left')[0]''? – 2012-02-06 15:46:05
是的,記住英鎊符號'#'用於id。還要記住,ID應該是獨一無二的。如果您重複您的ID,您可能會遇到一些奇怪的問題。 – 2012-02-06 15:53:05