Javascript getElementById返回NaN

Javascript getElementById返回NaN,javascript,nan,getelementbyid,Javascript,Nan,Getelementbyid,考虑下面的代码片段示例。我试过parseInt,但没有成功。在这里,我希望javascript在单元格PICweight中设置一个数字,然后稍后检索它并将其放置在另一个单元格totalcab中。您可以在这里看到,我想将数字设置为1,但是当代码运行时,它在totalcab中返回NaN <td id="PICweight" type="tel"></td> <script> window.onchange = function setfields() {

考虑下面的代码片段示例。我试过parseInt,但没有成功。在这里,我希望javascript在单元格
PICweight
中设置一个数字,然后稍后检索它并将其放置在另一个单元格
totalcab
中。您可以在这里看到,我想将数字设置为1,但是当代码运行时,它在
totalcab
中返回
NaN

<td id="PICweight" type="tel"></td>
<script>
    window.onchange = function setfields() {

        document.getElementById("PICweight").innerHTML = 1;
        var PICweight = document.getElementById("PICweight").value;

        var totalcabin = document.getElementById("totalcabin");
        totalcabin.innerHTML = +PICweight
    }
</script>

window.onchange=函数设置字段(){
document.getElementById(“PICweight”).innerHTML=1;
var PICweight=document.getElementById(“PICweight”).value;
var totalcabin=document.getElementById(“totalcabin”);
totalcabin.innerHTML=+PICweight
}

td元素没有值属性。当您在普通html元素(非输入元素)上使用
.value
时,您将得到
未定义的
。稍后,您将使用
+
未定义的
隐式转换为一个数字,这将导致
NaN
和后续观察结果

您应该使用
.textContent
而不是value来获取td元素内部的文本

var PICweight = document.getElementById("PICweight").textContent;

td没有价值观。这很有道理,谢谢!