Jquery外部div的每个函数

时间:2018-03-16 00:00:02

标签: jquery function each

我正在尝试更改外部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>

错误在哪里?

2 个答案:

答案 0 :(得分:2)

=属性和值之间添加description。在迭代$('.example2 span').eq(i)时,只需使用.example1,而不是内循环,只需使用您所使用的索引。假设他们有相同数量的孩子:

&#13;
&#13;
$('.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;
&#13;
&#13;

答案 1 :(得分:0)

内循环($('.example2 span').each)在外循环($('.example1 a').each)的每次迭代中执行一次。因此,<span>的内容将始终是最后<a>的描述。

为了达到您要做的目的,您应该为每个范围分配不同的ID。