0

我的页面上有以下元素:

<div id="price">$8.00</div>

我希望能够将值分配给8.00JavaScript 变量,以便我可以对其执行数学运算(特别是8.00 * .2),然后想要获取新数字并将其放在原始数字旁边,同时在原始数字上应用换行仅限数字。所以结果看起来像这样:

$8.00 $1.60(“$8.00”text-decoration:line-through适用于它。)

我已经能够计算出数学并重置文本,但我需要帮助弄清楚如何获取显示的内容,并将其值分配给变量。我正在使用 jQuery。任何帮助表示赞赏。

4

4 回答 4

5

$('#price').text()会给你文字。从那里,您可以使用parseFloat()获取号码。但是,你有一个$,所以你也需要子字符串。

var price = parseFloat($('#price').text().trim().substr(1));
于 2013-08-05T18:52:30.597 回答
2

您可以使用正则表达式来查找数字并使用它,或者您可以获取所有信息 and parseFloat,这将只返回数字......或者,如果您可以修改您的 html,您可以这样做

<div id="price">$<span id="actual_price">8.00</span></div>
于 2013-08-05T18:52:55.610 回答
2

parseFloat($('#price').text())会给你一个浮点数的数字。但是,如果您想获得一个变量,则必须使用它var来分配一个。此外,您将需要使用子字符串来获取 8.00,否则变量将为NaN.

于 2013-08-05T18:55:37.407 回答
2

HTML

<div id="price">$8.00</div>

jQuery

var price = $('#price').text().substring(1);
  newPrice = price * 0.2;
  newText = '<span>$' + price + '</span> $' + newPrice;
$('#price').html(newText);

CSS

#price span { text-decoration: line-through; }
于 2013-08-05T18:56:03.103 回答