javascript - 使用 JavaScript 单击时更改按钮上的文本

标签 javascript html innerhtml

我试图在用 JavaScript 按下按钮时更改按钮的文本。应该非常简单,但是,它不起作用。谁能解释一下吗?这是我的代码:

function changeInnerHTML() {
  var buttonValue = document.getElementById('elementTEST').innerHTML;
  var buttonValueInnerHTMLBegin = '<p id="elementTEST">';
  var buttonValueInnerHTMLEnd = '</p>';
  alert("buttonValue = " + typeof(buttonValue)); // -> "string"
  if (buttonValue == "Online") {
    alert("turn off"); // -> "turn off"
    buttonValue = buttonValueInnerHTMLBegin + "Offline" + buttonValueInnerHTMLEnd; // -> DOESN'T CHANGE ANYTHING
    alert("turned off"); // -> "turned off"
  } else if (buttonValue == "Offline") {
    buttonValue = "Online";
  } else {
    alert("There's a problem");
  }
}
<div class="containerTEST">
  <div class="divTEST" onclick="changeInnerHTML()">
    <p id="elementTEST">Online</p>
  </div>
</div>

我在包含和不包含“buttonValueInnerHTMLBegin/End”变量的情况下都运行了此命令,并且得到了相同的结果。

我收到警报(在代码中显示为注释),但文本/innerHTML 没有更改。

感谢您的帮助!

最佳答案

这不是一个引用,您必须直接在最后设置它:

document.getElementById('elementTEST').innerHTML = buttonValue

关于javascript - 使用 JavaScript 单击时更改按钮上的文本,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48673075/

相关文章:

javascript - insidehtml 提交按钮

javascript - 对存储在变量中的 xml 运行 Xpath(获取 "Uncaught TypeError: undefined is not a function")

javascript - 哪个哈希函数更适合在小型哈希表中表示 128 位随机 id

javascript - 如何过滤数据列表以呈现到 emberjs 中的多个导出中

html - 表格突出显示和轮廓大小

javascript - 如何使用 Javascript 将类添加到 div 的内部 HTML?

javascript - HTML 表格中的 "Endless scrolling"效果

javascript - 为右侧菜单添加 javascript 时,左侧的子菜单不会出现。但为什么?

javascript - 如何隐藏数据类型不是选择值的所有 div

javascript - JSON 到 DOM 或 innerHTML?