从<a> element</a>的href属性中提取文本

时间:2014-10-26 19:36:48

标签: javascript jquery html

如果href内有a,我如何从а标记的h4属性中提取文字?

我有这样的事情:

<h4><a href="http://google.com">Search</h4>
<h4><a href="http://yahoo.com">Search2</h4>

我希望得到类似的东西:

http://google.com
http://yahoo.com

实现这一目标的最简单方法是什么?

5 个答案:

答案 0 :(得分:0)

您可以获得href attr

$("h4 a").each(function () {
   alert($(this).attr('href'));
});

答案 1 :(得分:0)

首先,您必须更正HTML,a元素应始终关闭,否则您将在JS中获得意外结果。

$(function() {
  $('h4>a[href]').each(function() {
    $(this).parent().replaceWith( this.href );
    $(this).remove();
  });
});
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<h4><a href="http://google.com">Search</a></h4>
<h4><a href="http://yahoo.com">Search2</a></h4>

答案 2 :(得分:0)

检查此jsfiddle:http://jsfiddle.net/2bpyn7tp/1/

$.each( $('h4 > a') , function(){
    $('#result').append( $(this).attr('href') + '<br>');
}); 

答案 3 :(得分:0)

您的HTML也不正确。您尚未在代码中关闭锚标记。

我认为这就是你要找的东西。

HTML代码 -

<h4><a href="http://google.com">Search</a></h4>
<h4><a href="http://yahoo.com">Search2</a></h4>

jQuery代码 -

$('h4').replaceWith(function() {
    return $('h4 a').attr('href');
}); 

工作小提琴 - http://jsfiddle.net/Ashish_developer/szr2pjnb/

答案 4 :(得分:-1)

尝试使用此代码:

var arr = [];
$(function(){
   $("h4 a").each(function () {
      arr.push($(this).attr('href')); //<- Add href in array for further use
   });
   console.log(arr); 
});