Javascript,对来自 getElementByID 的值的 parseInt() 不起作用
Javascript, parseInt() on value from getElementByID doesn't work
几个小时以来,我一直在努力解决这个问题。究竟出了什么问题?
如果我理解正确的话,你从 getElementById 得到的值是一个字符串,所以我正在尝试将它解析为一个 int(以便将它用于总和),但是当我尝试将它打印为一个 int 时,它告诉我 NaN。
预期的结果是在测试 div 中打印值 123,替换文本 Click,但它只打印 NaN。
<div id="test" value="123" onclick="testFunction()">Click</div>
function testFunction() {
var strVal = document.getElementById('test').value;
var intVal = parseInt(strVal);
document.getElementById('test').innerHTML = intVal;
}
div
没有固有的 value
属性。您需要直接访问该属性:
function testFunction() {
var strVal = document.getElementById('test').getAttribute('value')
var intVal = parseInt(strVal);
document.getElementById('test').innerHTML = intVal;
}
<div id="test" value="123" onclick="testFunction()">Click</div>
几个小时以来,我一直在努力解决这个问题。究竟出了什么问题? 如果我理解正确的话,你从 getElementById 得到的值是一个字符串,所以我正在尝试将它解析为一个 int(以便将它用于总和),但是当我尝试将它打印为一个 int 时,它告诉我 NaN。
预期的结果是在测试 div 中打印值 123,替换文本 Click,但它只打印 NaN。
<div id="test" value="123" onclick="testFunction()">Click</div>
function testFunction() {
var strVal = document.getElementById('test').value;
var intVal = parseInt(strVal);
document.getElementById('test').innerHTML = intVal;
}
div
没有固有的 value
属性。您需要直接访问该属性:
function testFunction() {
var strVal = document.getElementById('test').getAttribute('value')
var intVal = parseInt(strVal);
document.getElementById('test').innerHTML = intVal;
}
<div id="test" value="123" onclick="testFunction()">Click</div>