2012-02-06 45 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)来代替。