あなたの問題は、あなたが.nested-fields
言うとき、あなたがすべての要素を1つの山にマッシュアップしているということです:
$(".exercise .nested-fields")
.exercise
それぞれを個別に検討する必要があります。これを行う簡単な方法の1つは、セレクターを半分に分割し、ネストされたループを使用することです。
countSetNumbers = ->
for ex in $('.exercise')
for nf, i in $(ex).find('.nested-fields')
$(nf).find('.set').html(i + 1)
これは、次のようなHTML構造を想定しています。
<div class="exercise">
<div class="nested-fields">
<div class="set"></div>
</div>
<!--...-->
</div>
<!--...-->
デモ: http: //jsfiddle.net/ambiguous/LekpV/
jQueryスタイルで行うこともできます。
countSetNumbers = ->
$('.exercise').each ->
$(@).find('.nested-fields').each (i) ->
$(@).find('.set').html(i + 1)
デモ: http: //jsfiddle.net/ambiguous/Au7rs/1/