gpt4 book ai didi

jquery - 使用 jquery each 传输链接并将其分配给新元素

转载 作者:行者123 更新时间:2023-12-04 08:24:55 24 4
gpt4 key购买 nike

我对如何使用 jquery 中的每个存储值从链接感到困惑,然后将其分配给链接元素。
这是标记。

<div class="box">
<a href="linkhere">Title</a>
<a href="transferhere" class="mybtn">New Link</a>
</div>

<div class="box">
<a href="linkhere">Title</a>
<a href="transferhere" class="mybtn">New Link</a>
</div>

<div class="box">
<a href="linkhere">Title</a>
<a href="transferhere" class="mybtn">New Link</a>
</div>
这是我所做的
$(".box").each(function(){
var hyperLinkValue = $('.box > a').attr('href');
$('a.mybtn').attr("href", hyperLinkValue);
});
但它似乎不起作用?。有什么想法吗?

最佳答案

您当前的逻辑是选择每个 a.mybtn循环的每次迭代中 DOM 中的元素。要解决此问题,您应该使用 this关键字来引用 each() 的当前迭代中的元素仅循环:

$(".box").each(function() {
var hyperLinkValue = $(this).find('a').attr('href');
$(this).find('a.mybtn').attr("href", hyperLinkValue);
});
话虽如此,您可以简化向 attr() 提供函数的逻辑。它返回要设置的值:

$("a.mybtn").attr('href', function() {
return $(this).prev('a').attr('href');
});
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>
<div class="box">
<a href="linkhere">Title</a>
<a href="transferhere" class="mybtn">New Link</a>
</div>

<div class="box">
<a href="linkhere">Title</a>
<a href="transferhere" class="mybtn">New Link</a>
</div>

<div class="box">
<a href="linkhere">Title</a>
<a href="transferhere" class="mybtn">New Link</a>
</div>

关于jquery - 使用 jquery each 传输链接并将其分配给新元素,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/65308438/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com