我正在尝试创建一个文本区域,其中设置了最大长度并且将其保留在一行上。一旦达到最大长度,就需要定位 textareas 属性,以便最大长度加倍并添加另一行。
为了看看这是否可行,我尝试添加额外的行和四十多个字符。这是我的代码...
<!DOCTYPE html>
<HEAD>
<TITLE>Cool Text Form</TITLE>
</HEAD>
<script language="javascript" type="text/javascript">
function newline()
{
x = document.getElementById("notesfield").length;
if (x >= 40)
document.getElementById("notesfield").rows="2";
document.getElementById("notesfield").maxlength="80";
}
</script>
<textarea id="notesfield" maxlength="40" rows="1" onkeyup="newline()" class="notes">Notes go here.</textarea>
问题是,这段代码不起作用。我已经尝试过了,一旦达到最大长度,就没有任何反应。另外,chrome的javascript控制台也没有错误。任何人都可以帮助我完成这项工作或为我指明正确的方向吗?
谢谢!
最佳答案
http://jsfiddle.net/UQTY2/119/
不确定您要做什么,但使用 document.getElementById("notesfield").value.length
检查文本长度,但您忘记了小括号
<!DOCTYPE html>
<HEAD>
<TITLE>Cool Text Form</TITLE>
</HEAD>
<script language="javascript" type="text/javascript">
function newline()
{
x = document.getElementById("notesfield").value.length;
if (x >= 40)
{
document.getElementById("notesfield").rows="2";
document.getElementById("notesfield").maxlength="80";
}
}
</script>
<textarea id="notesfield" maxlength="40" rows="1" onkeyup="newline()" class="notes">Notes go here.</textarea>
关于javascript - 一旦达到 "textarea"就更改 "maxlength"行,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16875538/