我得到一个HTML字符串为(var code);我想在href和title(例如:Star Album)和剧集编号(例如:第4集)中提取sid =(例如:12345)的所有值,但我想知道我如何在JavaScript中做到这一点并拥有所有sid,title和数组中的剧集编号值,以便我可以构建超链接?
注意:$ code的初始值是div的块,如下例所示:
<td width=120 valign="top"> <div style="height:135px;
border:1px solid #BBBBBB; background:#BBBBBB; margin-left:2px;
text-align:center; ">
<a href="/now/episodes.php?name=path&id=4000&sid=12345&page=0"><img
border="0" src="http://www.somesite.com/1234.jpg" width="150"
height="83"></a><br>
<font face="Tahoma" size="2"><b>Star Album</b><br/>
episode 4
</font> </div>
</td>
答案 0 :(得分:0)
希望这会有所帮助: Demo
var code = '<td width=120 valign="top"><div style="height:135px;border:1px solid #BBBBBB; background:#BBBBBB; margin-left:2px;text-align:center;"><a href="/now/episodes.php?name=path&id=4000&sid=12345&page=0"><img border="0" src="http://www.somesite.com/1234.jpg" width="150" height="83"></a><br><font face="Tahoma" size="2"><b>Star Album</b><br/>episode 4</font></div></td>';
function getDetails(html){
var div = $('<div></div>')
div.html(html);
var count=0;
var arr = [];
div.find('a').each(function(){
var href = $(this).attr('href');
href = href.substring(href.indexOf('sid=')+4, href.indexOf('&page='));
var title = $(this).parent().find('b').eq(count++).text();
arr.push({"sid" : href , "title": title});
});
return arr;
}
console.log(getDetails(code));