我正在尝试更改外部HTML的div。用jquery各个函数。但我的代码不起作用。
必须将spans的html更改为ExampleDesc1,ExampleDesc2,ExampleDesc3 ......
<div class="example1">
<a href="#" description"ExampleDesc1"></a>
<a href="#" description"ExampleDesc2"></a>
<a href="#" description"ExampleDesc3"></a>
<a href="#" description"ExampleDesc4"></a>
<a href="#" description"ExampleDesc5"></a>
</div>
<div class="example2">
<span></span>
<span></span>
<span></span>
<span></span>
<span></span>
</div>
<script type="text/javascript">
var desc;
$('.example1 a').each(function () {
var desc = $(this).attr('description');
$('.example2 span').each(function () {
$(this).html(desc);
});
});
</script>
错误在哪里?
答案 0 :(得分:2)
在=
属性和值之间添加description
。在迭代$('.example2 span').eq(i)
时,只需使用.example1
,而不是内循环,只需使用您所使用的索引。假设他们有相同数量的孩子:
$('.example1 a').each(function (i) {
var desc = $(this).attr('description');
$('.example2 span').eq(i).html(desc);
});
&#13;
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<div class="example1">
<a href="#" description="ExampleDesc1"></a>
<a href="#" description="ExampleDesc2"></a>
<a href="#" description="ExampleDesc3"></a>
<a href="#" description="ExampleDesc4"></a>
<a href="#" description="ExampleDesc5"></a>
</div>
<div class="example2">
<span></span>
<span></span>
<span></span>
<span></span>
<span></span>
</div>
&#13;
答案 1 :(得分:0)
内循环($('.example2 span').each
)在外循环($('.example1 a').each
)的每次迭代中执行一次。因此,<span>
的内容将始终是最后<a>
的描述。
为了达到您要做的目的,您应该为每个范围分配不同的ID。