如果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
实现这一目标的最简单方法是什么?
答案 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');
});
答案 4 :(得分:-1)
尝试使用此代码:
var arr = [];
$(function(){
$("h4 a").each(function () {
arr.push($(this).attr('href')); //<- Add href in array for further use
});
console.log(arr);
});