0

私は次のものを持っています

var invest401_2 = $("input[type=hidden][name=invest401_2]").val();  
var invest401_3 = $("input[type=hidden][name=invest401_3]").val();  
var invest401_4 = $("input[type=hidden][name=invest401_4]").val();  
var invest401_5 = $("input[type=hidden][name=invest401_5]").val();  

var invest401_0label = Math.round(((invest401_0/balance401)* percent401kb));    
var invest401_1label = Math.round(((invest401_1/balance401)* percent401kb));    
var invest401_2label = Math.round(((invest401_2/balance401)* percent401kb));    
var invest401_3label = Math.round(((invest401_3/balance401)* percent401kb));    
var invest401_4label = Math.round(((invest401_4/balance401)* percent401kb));
var invest401_5label = Math.round(((invest401_5/balance401)* percent401kb));

$("#invest401_0").text(invest401_0label+'%');
$("#invest401_1").text(invest401_1label+'%');
$("#invest401_2").text(invest401_2label+'%');
$("#invest401_3").text(invest401_3label+'%');
$("#invest401_4").text(invest401_4label+'%');
$("#invest401_5").text(invest401_5label+'%');

カウント合計を持つ - ex. 5

これを for each ループに投げるにはどうすればよいですか。

試しましたがうまくいきませんでした。

4

4 に答える 4

1

をご覧ください$.eachhttp://api.jquery.com/jQuery.each/

この要素にクラスを追加する$("input[type=hidden][name=invest401_2]").val();と、それらを配列として取得して使用できますeach

という名前のクラスを追加すると、elements. 次の例を使用します。

$('.elements').each(function(i, element) {
    var invest = $(element).val();
    $(element).val(Math.round((invest/balance401)* percent401kb));
});

または

var $elements = $('.elements');
for(var i in $elements) {
    var element = $elements[i];
    element.val(Math.round((element.val()/balance401)* percent401kb));
}
于 2012-07-27T03:54:49.287 に答える
1

これを試して

var invest401_label = [];
var invest401 = [];
for(i=0;i<6;i++)
{
    invest401[i] = var invest401_2 = $("input[type=hidden][name=invest401_"+i+"]").val();
    invest401_label[i] = Math.round(((invest401[i]/balance401)* percent401kb));
    $("#invest401_"+i).text(invest401_label[i]+'%');
}
于 2012-07-27T03:57:02.277 に答える
0

あると仮定すると#invest401_0 - 5

$("[id=^invest401_]").each(function(){
    $(this).text(Math.round((($("input[type=hidden][name="+this.id+"]").val()/balance401)* percent401kb))+'%');
});

参照

http://api.jquery.com/jQuery.each/

http://api.jquery.com/category/selectors/

于 2012-07-27T04:02:45.563 に答える
0

これはうまくいかないかもしれませんが (私は現在 ie8 マシンからこれを書いています)、これは/すべき/あなたが望むことを正しく行い、そこにあるすべてのコードを置き換えます

for (i = 0; i < $('.hiddenelems').size(); i++) {
    $('.hiddenelems:eq('+i+')').text(Math.round((($('.hiddenelems:eq('+i+')').val()/balance401)* percent401kb))+'%');
}
于 2012-07-27T04:06:19.910 に答える