如何从javascript中的可超链接图像div中提取href =和标题和描述值中的值?

时间:2012-12-10 11:17:38

标签: javascript

我得到一个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>

1 个答案:

答案 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));