如何添加文本到textarea w / javascript但后来仍能输入?

时间:2016-10-16 17:07:55

标签: javascript html textarea

我正在尝试在javascript中将文本添加到textarea中,但是,在将其标记为重复之前,它不允许我在textarea中添加更多文本后再输入其他内容。

var f1t = true;

var foo = function() {
  if (f1t === true) {
    document.getElementById("textarea").innerHTML += "<i:>"
    f1t = false
  } else {
    document.getElementById("textarea").innerHTML += "<:>"
    f1t = true
  }
}
<textarea id="textarea"></textarea> <button onclick="foo();">+</button>

当这段代码运行时,它会在textarea中放入尽可能多的东西,直到我输入内容为止。然后,当调用该函数时,它不会在textarea中放任何东西并且不会抛出任何错误。我希望能够在输入内容后不断向textarea添加文本。

2 个答案:

答案 0 :(得分:1)

textarea的innerHTML描述了它的默认值而不是当前值。用户输入内容后,其默认值无关紧要(除非您有重置按钮)。

改为设置value属性。

答案 1 :(得分:0)

使用.value代替.innerHTML

var f1t = true,
    foo = function() {
      document.getElementById("textarea").value += f1t ? "<i:>" : "<:>";
      f1t = !f1t;
    };
<textarea id="textarea"></textarea> <button onclick="foo();">+</button>