-2

我需要从这样的代码中提取数据:

<div class="rateCalc_InfoLine2">
    <span style="font-size:12px;">
        Text1 - <b><font color="red" size="2">$ 500</font></b>;
        Text2 - <b><font color="red">$ 30</font></b>
    </span>
</div>

所以基本上,我需要找到class30内部2nd font tagspan tag值。结构是静态的,所以我不需要担心错误(只有值会改变)div tagrateCalc_InfoLine230

我知道要像这样获得 div 的价值:

$(".rateCalc_InfoLine2").html();

但是如何获得我需要的特定的?


回答:$(".rateCalc_InfoLine2 font").eq(1).html().replace('$ ', '');

4

6 回答 6

3

您可以首先div使用后代选择器查找字体元素,然后使用 index 使用eq()查找第二个元素。

现场演示

$(".rateCalc_InfoLine2 font").eq(1).html();

编辑以删除 $

strResult = $(".rateCalc_InfoLine2 font").eq(1).html().replace('$ ', '');
于 2013-01-10T09:41:11.633 回答
2
$(".rateCalc_InfoLine2 font:eq(1)").html();

或者

$(".rateCalc_InfoLine2 font:last").html();
于 2013-01-10T09:41:22.193 回答
0

试试这个:

$(".rateCalc_InfoLine2 font")[1].innerHTML;

演示 JSFiddle

于 2013-01-10T09:46:15.277 回答
0

以下将选择相关元素text(),使用方法访问其文本内容,其中的match()任何数值,并将其分配给sum

var price = $('.rateCalc_InfoLine2 font:eq(1)').text().match(/\d{1,}/);
if (price) { var sum = price[0]; }

在您的示例中,sum将被分配 value 30

于 2013-01-10T09:46:54.843 回答
0

要从标签内选择值,您需要使用html()

var value = $(".rateCalc_InfoLine2 font").eq(1).html();
于 2013-01-10T09:44:10.157 回答
0

好吧,在这种特定情况下,您可以这样做:

$(".rateCalc_InfoLine2 font")[1].innerHTML;
于 2013-01-10T09:41:21.840 回答