jQuery的。按类名检查每个项目

时间:2011-04-02 15:48:51

标签: javascript jquery

例如,有一些标签

<input value="1000" class="chrome-input" />
<input value="2000" class="chrome-input" />

如何使用每个值进行操作? 在这里,我可以为每个输入设置值。 $(".chrome-input").val("10"); 但是,如果我想将每个值乘以10,那该怎么办。

$(".chrome-input").val($(".chrome-input").val()*10);

这样的东西

我想要那个

<input value="10000" class="chrome-input" />
<input value="20000" class="chrome-input" />

6 个答案:

答案 0 :(得分:5)

干净的方法是使用val的回调签名:

$('.chrome-input').val(function(i, oldVal) {
    return parseInt(oldVal, 10) * 10;
});

如果将函数作为val的第一个参数传递,则将在每个元素上调用该函数。传递的第二个参数将是元素的当前值。函数的返回值将被设置为新值。

答案 1 :(得分:1)

$(".chrome-input").each(function() {
  var el = $(this);
  el.val(el.val() * 10);
});

答案 2 :(得分:1)

你可以这样使用.each()

$('.chrome-input').each(function(i,ele){
  var $this = $(this);
  $this.val( parseInt($this.val(),10) * 10 );
});

答案 3 :(得分:1)

试试这个:http://jsfiddle.net/vdTT4/

$(".chrome-input").each(function(){
    $(this).val($(this).val() * 10);
}); 

答案 4 :(得分:1)

$(".chrome-input").each(function(){var value = $(this).val(); $(this).val(value*10); });

答案 5 :(得分:0)

您需要使用函数each()

$('li').each(function(index) {
  alert(index + ': ' + $(this).text());
});

link to jQuery documentation