jquery基于类获取链接和文本

时间:2010-06-04 01:19:19

标签: jquery arrays find hyperlink

我正在尝试使用jquery来获取整个链接,具体取决于它的类。

这是我的代码:

<ul class="vm_catTigra">
  <li><a class="mainlevel" href="/index.php&amp;category_id=6">AAAAA</a></li>
  <li><a class="mainlevel" href="/index.php&amp;category_id=10">BBBBB</a></li>
  <li><a class="sublevel" href="/index.php&amp;category_id=11">CCCCC</a></li>
  <li><a class="sublevel" href="/index.php&amp;category_id=12">DDDDD</a></li>
  <li><a class="mainlevel" href="/index.php&amp;category_id=13">EEEEE</a></li>
</ul>

这就是我想要jquery为我抓取的(在一个数组中):

<a class="mainlevel" href="/index.php&amp;category_id=6">AAAAA</a>
<a class="mainlevel" href="/index.php&amp;category_id=10">BBBBB</a>
<a class="mainlevel" href="/index.php&amp;category_id=13">EEEEE</a>

我尝试过使用它:

var mainlevel = [];
jQuery(".mainlevel").each(function() { 
  mainlevel.push(jQuery(this).html());
});

但它正在撤回AAAAA,BBBBB,EEEEE而不是我追求的全部代码。

3 个答案:

答案 0 :(得分:5)

你可以使用.map().html()这样做:

var linkArray = $("a.mainlevel").map(function() {
    return $(this).parent().html();
}).get()​​​​​​;

You can view a working demo here,最后的.get()使得你可以在最后得到本机数组对象......这将产生一个像你的问题一样的3字符串数组:)

答案 1 :(得分:2)

像这样:

$('a.mainlevel')

或者,如果页面上有更多内容,并且您只想要该列表中的那些内容:

$('.vm_catTigra a.mainlevel')

您应该阅读documentation

答案 2 :(得分:0)

你可以迭代每个li并获取innerhtml然后将它们存储在一个数组上 像这样。

var arr = ""; 
var arr_i = 0;
$(".mainlevel parent").each(function(){
  arr[arr_i] = $(this).html();
  arr_i++;
});

希望这会有所帮助