根据字符串解析 html 中的数据
Parsing data from html based on a string
我需要从 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">
Nifty : 7970.05 [14.60]
<img src="../images/arow_green.jpg" width="14" height="12">
-- end of html --
我需要提取的值是出现在"Nifty : "之后的值——在上面的example '7970.05' .
我有以下代码来提取它:
--代码--
$('td.text21').each(function () {
status = true;
var price1 = $(this).text().substr(340,7);
--代码结束--
但有时我注意到值的位置不是 340 - 它有时会更改为 303,因为 img src link 会根据某些值发生变化。
值将始终在 "Nifty : " 之后 - 这永远不会改变。
有没有办法让我可以编码来提取出现在"Nifty : "之后的7位数字值?
我们将不胜感激。
您可以从 "Nifty :" 之后的位置获取它,而不是从 340 获取子字符串,您可以通过
$(this).text().indexOf("Nifty :") + 7; // 7 is the length of "Nifty :"
所以你的新行是:
var price1 = $(this).text().substr($(this).text().indexOf("Nifty :") + 7, 7);
我需要从 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">
Nifty : 7970.05 [14.60]
<img src="../images/arow_green.jpg" width="14" height="12">
-- end of html --
我需要提取的值是出现在"Nifty : "之后的值——在上面的example '7970.05' .
我有以下代码来提取它:
--代码--
$('td.text21').each(function () {
status = true;
var price1 = $(this).text().substr(340,7);
--代码结束--
但有时我注意到值的位置不是 340 - 它有时会更改为 303,因为 img src link 会根据某些值发生变化。
值将始终在 "Nifty : " 之后 - 这永远不会改变。
有没有办法让我可以编码来提取出现在"Nifty : "之后的7位数字值?
我们将不胜感激。
您可以从 "Nifty :" 之后的位置获取它,而不是从 340 获取子字符串,您可以通过
$(this).text().indexOf("Nifty :") + 7; // 7 is the length of "Nifty :"
所以你的新行是:
var price1 = $(this).text().substr($(this).text().indexOf("Nifty :") + 7, 7);