2013-02-27 43 views
0

我試圖循環.append()函數,以便每次使用不同的值更改選擇器。但是,我不知道選擇器的語法,以達到我的目標。那麼,如何改變它呢?非常感謝! 家豪使用選擇器作爲變量循環.append()

<script type="text/javascript"> 
var a=3; 
for (var i=0;i<a;i++)      {       
$i.append(i); 
} 
</script> 

<div class="0"></div> // expected: display 0 
<div class="1"></div> // expected: display 1 
<div class="2"></div> // expected: display 2 
+1

'class'名字不應該是數值。使用類似「class1」的前綴。 – Stefan 2013-02-27 18:05:35

+0

@Stefan [不應該,但可以](http://stackoverflow.com/questions/9210307/html-5-classnames-and-ids)。 – Blazemonger 2013-02-27 18:07:55

回答

1

所有的數字類的第一和IDS系統不支持多,你認爲它是。

更新您的HTML這樣的事情

<div class="box-0"></div> 
<div class="box-1"></div> 
<div class="box-2"></div> 

然後你就可以使用僵局,他的回答提供的腳本。

var a=3; 
for (var i=0;i<a;i++) {       
    $(".box-"+i).append(i); //this is what you need 
} 
+1

明白了。謝謝。 – user2108245 2013-02-27 18:24:47

2
<script type="text/javascript"> 
var a=3; 
for (var i=0;i<a;i++)      {       
$("."+i).append(i); //this is what you need 
} 
</script> 

<div class="0"></div> // expected: display 0 
<div class="1"></div> // expected: display 1 
<div class="2"></div> // expected: display 2 
+0

@ user2108245一個新問題應該單獨發佈。 – Blazemonger 2013-02-27 18:09:03

3

您也可以使用函數作爲參數傳遞給append,可能是你的情況更清潔,可能更快:

$('div').append(function() { 
    return this.className; 
}); 

http://jsfiddle.net/sSVL8/

+0

它只是一個新手問題:-) – 2013-02-27 19:49:33