【问题标题】:Text Value From HTML Into Javascript Var?从 HTML 到 Javascript Var 的文本值?
【发布时间】:2014-12-12 12:29:50
【问题描述】:

我想知道以下行是否是获取 html 并将其作为数值放入 Javascript var 的正确方法?

var thePoolHeatingFeeRounded = Number(document.getElementsById("priceDisplayPoolHeating").innerHTML);

没关系,变量名称中包含“rounded”一词。我试图放入这个 var 的值是一个 2 点浮点数,它已经被四舍五入并且以 html 的形式存在。

下面是 getElementsById 引用的 HTML 代码行...

$<div id="priceDisplayPoolHeating" class="priceDisplay">8.00</div>

非常感谢任何输入。

【问题讨论】:

  • 是的,这似乎是正确的。您将需要检查 NaN,除非您有处理非数字的验证。

标签: javascript innerhtml getelementbyid var


【解决方案1】:

试试这个:

var thePoolHeatingFeeRounded = Number(document.getElementById("priceDisplayPoolHeating").innerHTML);

你打电话给getElementsById不正确(不是复数),我改成getElementById

提示:如果您需要检查数字是否有效,您可以使用!isNaN(thePoolHeatingFeeRounded) 或使用技巧将其转换为默认数字(例如 0 或 -1),如下所示:

var thePoolHeatingFeeRounded = Number(document.getElementById("priceDisplayPoolHeating").innerHTML) || 0;

你也可以使用parseFloat():

var thePoolHeatingFeeRounded = parseFloat(document.getElementById("priceDisplayPoolHeating").innerHTML) || 0;

【讨论】:

  • 感谢有关 parseFloat() 的信息。
【解决方案2】:

你很亲密。应该是 getElementById,而不是 Elements。我创建了一个小代码来向您展示它是如何工作的。

这是本网站代码显示器中的代码:

function displayText(){

var thePoolHeatingFeeRounded = Number(document.getElementById("priceDisplayPoolHeating").innerHTML)

  alert(thePoolHeatingFeeRounded);
}
&lt;div id="priceDisplayPoolHeating"&gt;8.01&lt;/div&gt;&lt;input type="button" onclick="displayText()" value="Display the innerHTML of Pool Heating"&gt;

【讨论】:

  • 太棒了!你能告诉我为什么 .00 已经从 var 中剥离了吗?
  • 我猜 Number() 函数需要我指定 2 点浮点数?
  • Number() 函数将字符串转换为函数,并将其简化为最简单的形式。
  • 好吧,现在我很困惑。您如何让 Number() 将数字显示为 2 点浮点数而不添加任何参数?
  • 参数是什么意思?
猜你喜欢
  • 2015-02-05
  • 2020-05-03
  • 1970-01-01
  • 2020-07-04
  • 1970-01-01
  • 2011-05-15
  • 2012-07-01
  • 2015-08-23
  • 2014-08-28
相关资源
最近更新 更多