请注明以下标记:
<div class="closet">
<input name="hello1" class="input" />
</div>
<div class="closet">
<input name="hello2" class="input" />
</div>
我想要输入名称并设置另一个值(例如hello5和hello6),所以这是我的代码:
var i = 5;
$('.closet').each(function (k)
{
i++;
$('.input').attr('name', 'hello'+i);
});
但它给我的两个问题输入的值是“hello6”。
请你有任何建议吗?
答案 0 :(得分:2)
替换
$('.input').attr('name', 'hello'+i);
与
$('.input', this).attr('name', 'hello'+i);
所以要更改迭代所在的.input
内的.closet
。
答案 1 :(得分:0)
您已经可以访问索引和each()
循环中的元素:
$('.closet').each(function(index, elem) {
$('.input', elem).attr('name', 'hello'+(index+5));
});
答案 2 :(得分:0)
而不是
$('.input').attr('name', 'hello'+i);
应该是
$(this).find('.input').attr('name', 'hello'+i);