我正在尝试从动态链接中提取a href
并将a href
src插入另一个链接。
我的HTML代码摘录:
<li id="source_ahref"><a href="http://www.sitepoint.com/forums/showthread.php?p=4729682#post4729682">This is the Source Link</a></li>
<li class="text">Support Document 4 <a id="target_ahref" href="#">Read Document</a></li>
我的Javascript代码:
<script type="text/javascript">
var theHref = $("#source_ahref a:first").attr("href");
$("#target_ahref a:first").attr("href", theHref);
</script>
您可以在http://jsfiddle.net/prodac/Azr7K/
看到我的完整代码谢谢! :)
答案 0 :(得分:4)
小修正,
<script type="text/javascript">
var theHref = $("#source_ahref a:first").attr("href");
$("#target_ahref").attr("href", theHref);
</script>
#target_ahref就足够了,因为它是锚标记的ID
假设您的ID是您的班级[根据以下评论],这里是更新的代码
<script type="text/javascript">
$.each($(".source_ahref"),function(){
var theHref = $("a:first",$(this)).attr("href");
$(".target_ahref",$(this).parent()).attr("href", theHref);
});
</script>
答案 1 :(得分:0)
替换$(“#target_ahref a:first”)。attr(“href”,theHref);以下内容:
$("#target_ahref").attr("href", theHref);
因为#target_ahref实际上是一个本身,所以不需要引用a:首先。
答案 2 :(得分:0)
Chinmayee's answer不再正确。假设你的HTML结构看起来像你的问题,每个li
元素彼此相邻,那么你可以改用它:
$('.target_ahref').attr('href', function(){
return $(this).parent().prev().children('a').attr('href');
});
根据您的具体情况,您可能还希望将此选择器用于return语句:
return $(this).parent().prevAll('.source_ahref').first().children('a').attr('href');
答案 3 :(得分:0)
我终于设法将一个有效的解决方案放在了一起。非常感谢大家! :)
可以在http://jsfiddle.net/prodac/qvBn2/查看代码。随意使用和编辑!