我有一个textarea,其中文本换行工作正常,而且我在javascript中编写了自动增长代码,如果文本换行如代码段所示,则会增加textarea的高度而不是滚动。
但我面临的问题是,当我在身体负荷上使用document.getElementById
将值传递给textarea时,textarea大小不会自动增加,但是当我输入任何charachter时,文本区域大小自动增加。
根据我的理解,一旦在textarea中键入任何字符串,就应该生成一个事件吗?
如果我在代码中的任何地方出错了,请纠正我吗?
提前谢谢!
document.getElementById("fee1").value = "text";
function auto_grow(element) {
element.style.height = "5px";
element.style.height = (element.scrollHeight)+"px";
}

<textarea form ='billsave' class= 'form-control input-sm ftype feet' rows='1' id = 'fee1' name= 'feetype' oninput='auto_grow(this)' required></textarea>
&#13;
答案 0 :(得分:0)
不,您必须在设置文本后手动触发oninput()
事件。
document.getElementById("fee1").value = "text";
document.getElementById("fee1").oninput()
function auto_grow(element) {
element.style.height = "5px";
element.style.height = (element.scrollHeight)+"px";
}
<textarea form ='billsave' class= 'form-control input-sm ftype feet' rows='1' id = 'fee1' name= 'feetype' oninput='auto_grow(this)' required></textarea>