我在这里简化了我的代码,以表明我有一个值传入" mydiv1"这总是一个数字。我希望能够引用它来执行操作,具体取决于它是否为正或负,但它必须被视为字符串。有没有什么办法可以将这个值作为数字得到?我所见过的所有主题如parseInt()似乎与指定变量的时间有关,而不是从html中获取。
<html>
<head>
<script type="text/javascript">
function myFunction() {
var firstDivContent = document.getElementById('mydiv1');
// var firstDivContent = "23";
if (firstDivContent > 0) {
alert('positive')
}
else if (firstDivContent < 0) {
alert ('negative')
}
}
</script>
</head>
<body onload="myFunction();">
<div id="mydiv1">23</div>
</body>
</html>
答案 0 :(得分:2)
<html>
<head>
<script type="text/javascript">
function myFunction() {
var firstDivContent = document.getElementById('mydiv1');
firstDivContent = parseFloat(firstDivContent.innerHTML);
if (firstDivContent > 0) {
alert('positive')
}
else if (firstDivContent < 0) {
alert ('negative')
}
}
</script>
</head>
<body onload="myFunction();">
<div id="mydiv1">23</div>
</body>
</html>
使用innerHTML
获取div的HTML内容,然后使用parseFloat
将字符串转换为数字。
答案 1 :(得分:1)
您应该获得元素的innerHTML
。然后,您可以使用parseInt()
或+yourVar
将字符串转换为数字
var firstDivContent = +(document.getElementById('mydiv1').innerHTML);
if (firstDivContent > 0) {
alert('positive')
} else if (firstDivContent < 0) {
alert('negative')
}
<div id="mydiv1">23</div>
答案 2 :(得分:-1)
我更喜欢使用&#34; +&#34;运算符使nuber变得更清晰,在这个Android activity onDestroy() called on screen lock中,你可以测试它:
function myFunction() {
var firstDivContent = document.getElementById('mydiv1');
// var firstDivContent = "23";
if (firstDivContent > 0) {
alert('positive')
}
else if (firstDivContent < 0) {
alert ('negative')
}
}