2012-03-20 1 views
0

".item"クラスのdivの数を自動的に数えたいと思っています。その後、jQueryが.item内の別のdivの数値をクラス ".itemnumber"で出力するようにします。だから、最初のdivを "1"に、2番目のdivを "2"に出力したい、というようにします。私は数える方法を知っていますが、私はearch divの番号を出力する方法がわかりません。jqueryと出力divでカウントする

何か助けていただきありがとうございます!あなたのHTMLは(推測で)そのようなものである場合

+0

[質問に答えてください] –

答えて

1

をお元気ですか?

あり、より最適化されたソリューションがあることが、これを試してみてください:

var count = $('div.item').length; //Get all items with class "div", which returns an array... so you just use the "length" to get the total count. 

$('div.item').each(function(k,v){ //.each takes a first argument which is a function, and this function takes 2 arguments "k"ey and "v"alue. 
    //v in this case is the div, so: 
    $('.itemnumber',v).html('Div #' + String(k+1)); 
}); 

は何の疑いもありますなら、私に教えてください。

乾杯!

+0

それは完全にトリックでした!素晴らしいありがとう。また、最初の9項目の前に "0"を入れる方法も分かりますか?だから01、02 ... 08、09、10、11 –

+0

それはうまくいった。あなたの数を埋めるよう 、迅速な解決策は、この機能を実装するために、次のようになります。 http://www.electrictoolbox.com/pad-number-two-digits-javascript/ しかし、私が使用することをお勧めしますstr_padのPHPJS.orgの関数は次のようになります。 http://phpjs.org/functions/str_pad:525 これにより、2桁だけではなく、str_padの全機能を使用できます。 乾杯! – fsodano

+0

ところで、var "count"はまったく使用されていないことを覚えておいてください。クラス "item"を持つdivの合計量を事前に知りたい場合は、その場所に置きました。 – fsodano

1
<div class="item"> 
    <div class="itemnumber"></div> 
</div> 

<div class="item"> 
    <div class="itemnumber"></div> 
</div> 

、その後の要素をカウントする理由はありません、あなたはこれをシンプル行いたい:

$.each(".item", function(i, val) { 
    $(this).find(".itemnumber").text(i) 
}); 
+0

それはうまくいきませんでした、それはアイテムの数を出力しているだけです –

関連する問題