繁体   English   中英

在数学上使用inner.HTML?

[英]Use an inner.HTML mathematically?

我正在制作一个脚本,在其中我必须使用一个数字的inner.HTML,并以数学方式使用它。 这是示例:

<span id="searchResults">2301</span>

如您所见,inner.HTML 是一个数字,我想制作一个脚本,如:

var results = document.getElementById("searchResults");
if (results > 3000)
    {
        location.reload(true);
    }

当然,这是不可能的,因为脚本没有将inner.HTML 视为可以在数学上使用的数字。

那么,有没有办法将 inner.HTML 转换为我可以用它进行数学运算的数字?

感谢您的帮助!

您可以使用一元运算符+将字符串转换为数字,例如

var results = +(document.getElementById("searchResults").innerHTML);
//------------^

你也忘了使用.innerHTML

您可能需要.innerHTML ,因为没有.innerHTML您的results将包含HTMLspanobject您必须执行innerHTML

var results = document.getElementById("searchResults").innerHTML;
alert(parseInt(results));
if (parseInt(results,10) > 3000)
{
    alert("te");
   // location.reload(true);
}

演示

  1. 您必须实际获取innerHTML(您当前正在查看HTML 元素节点)
  2. 您可以使用parseIntparseFloat或一元+运算符(但您可能不需要,因为当 LHS 是数字时>非常聪明)。

这样的:

var results = document.getElementById("searchResults");
var results_num = parseInt( results.innerHTML, 10 );
var results = document.getElementById("searchResults").innerHTML;
if (parseInt(results) > 3000)
{
    location.reload(true);
}

InnerHtml 返回字符串内容。 您需要将其转换为数字/整数。

var results = document.getElementById("searchResults");
if (results != null && parseInt(results.innerHTML) > 3000)
{
  location.reload(true);
}

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM