2015-11-06 98 views
0

我需要提取从HTML页面的特定值 - 相关的HTML内容如下:解析数据

-html -- 

<table border=0 cellspacing='1' cellpadding='0' class="content-denote"  width="965" > 
         <tr height=17><td align=left class="text21"><b>Sensex : 26326.60 
            [22.40] 

            <img src="../images/arow_green.jpg" width="14" height="12"> 




            &nbsp;&nbsp;&nbsp; Nifty : 7970.05 [14.60] 
            <img src="../images/arow_green.jpg" width="14" height="12"> 

-- end of html -- 

我需要提取的值是显示的值之后的“Nifty:” - 在上面示例'7970.05'

我有下面的代码提取此:

--code--

$('td.text21').each(function() { 
        status = true; 
        var price1 = $(this).text().substr(340,7); 

的代码--end -

但有时我注意到的地方该值不是340--它有时会更改为303,因为img src链接会根据某些值进行更改。

该值将始终在“Nifty:”之后 - 这永远不会改变。

有没有一种方法,我可以代码提取后出现的7位值“俏皮:”

任何帮助将不胜感激。

回答

1

而不是从340取子,你可以把它从位置“俏皮:”后,您可以通过做

$(this).text().indexOf("Nifty :") + 7; // 7 is the length of "Nifty :" 

能获得新的线路是:

var price1 = $(this).text().substr($(this).text().indexOf("Nifty :") + 7, 7); 
+0

谢谢了。完美的作品。 –