2015-12-16 13 views
5

は、ここで私は.progressButtonの子であるpタグに番号を追加しようとしていますJavascriptのループインデックスの問題

<li class="carousel-btn-wrapper"> 
    <div class="progressButton"> 
    <p></p> 
    </div> 
    <button class="videoCaroselButton">Welcome</button> 
</li> 
<li class="carousel-btn-wrapper"> 
    <div class="progressButton"> 
    <p></p> 
    </div> 
    <button class="videoCaroselButton">Video Name</button> 
</li> 
<li class="carousel-btn-wrapper"> 
    <div class="progressButton"> 
    <p></p> 
    </div> 
    <button class="videoCaroselButton">Another Video Name</button> 
</li> 

HTMLです。私はすべてのpタグで増加する数字が必要です。私はJavaScriptのループに問題があります。私はその問題が方法.text(buttonNumber [])にあると仮定します。インデックス作成中です。これをどうすれば解決できますか?

var videoSrcArray = ['url.com/adf', 'url.com/asf', 'url.com/sdf', 'url.com/asdf','url.com/asdfl'] 
var buttonNumber = ""; 
var i; 
for (i = 1; i < videoSrcArray.length - 1; i++) { 
    buttonNumber += i ; 
    $('.progressButton').children('p').text(buttonNumber[1]); 
} 
+0

最初に番号を追加する場合は、なぜbuttonNumberをStringとして初期化しましたか?そして2番目に[]で文字列を呼び出すことは何を意味しますか? –

+0

あなたは1、12、123などを取得していますか? – PSWai

+0

'buttonNumber'は' '' 'として初期化されています。整数を追加すると、連結された文字列になります。 – thedarklord47

答えて

4

実際にはbuttonNumberはまったく必要ありません。 (ライン2と5) それを削除してから変更します。

$('.progressButton').children('p').text(buttonNumber[1]); 

に:

$('.progressButton').children('p').eq(i-1).text(i); 
+0

これを行うと、配列の長さだけが得られます。したがって、各pタグは配列内の項目の総数であるため、「15」を持っています。 – Tgrosk

+0

私の編集を参照してください。私は修正を追加 – thedarklord47

+0

私はもう1つの編集をお勧めします。 ".eq(i-1).text(i)"ですので、数字は0ではなく1から始まります。しかし、ありがとうございます。 – Tgrosk

0

を0 としてbuttonNumberのinitてみてください、あなたのループのための私をinitにVARを使用し、 buttonNumber []の代わりにbuttonNumber.toString()を使用してください。