我正在尝试在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添加文本。
答案 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>