You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

无法修改span的innerText或innerHTML?JS DOM操作赋值不生效求助

问题原因

你修改无效的核心问题是对基础类型赋值的逻辑理解有偏差:

  • 你执行let score = document.querySelector("#score-span").innerText时,是把span节点的innerText字符串值拷贝了一份赋值给score变量,这个变量和原DOM节点没有任何绑定关系
  • 后续你修改score变量的值,只是修改了内存里的字符串副本,不会同步更新到原DOM节点上,所以页面不会有对应变化

修正方案

直接操作DOM节点的innerText属性即可,修改后的transfer函数参考:

function transfer(key, value) {
    // 先拿到DOM节点本身,而不是只拿它的innerText值
    const scoreSpan = document.querySelector("#score-span")
    scoreSpan.innerText = `${scoreSpan.innerText} ${value}`
    const nameSpan = document.querySelector("#name-span")
    nameSpan.innerText = `${nameSpan.innerText} ${key}`
    console.log(nameSpan.innerText)
}

其他冗余代码说明

你JS第一行let submit = document.querySelector("#submit")是无效代码:你的提交按钮没有设置id="submit",这个变量永远是null,且你后续也没有用到这个变量,可以直接删除。

内容的提问来源于stack exchange,提问作者berboş

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.10.06 07:39:02