javascript逗号计数器 测试输入 函数验证(表单){ var TestVar=form.inputbox.value; myArray=TestVar.split(','); document.write(myArray.length); } 在框中输入内容: 验证(本表格);

javascript逗号计数器 测试输入 函数验证(表单){ var TestVar=form.inputbox.value; myArray=TestVar.split(','); document.write(myArray.length); } 在框中输入内容: 验证(本表格);,javascript,html,javascript-events,Javascript,Html,Javascript Events,有人能帮我修一下吗。我一按下一个键,它就结束了。 我希望它无限期地更新。 例子 输入:你好 产出:1 输入你好,再见 产出:3 …当您执行document.write()加载文档后,它将清除当前文档并开始编写新文档。在加载文档后不要使用document.write(),除非在极少数情况下您需要这样的效果。这不是你想要的 如果您只是为了调试而尝试查看myArray.length值,请使用console.log()而不是document.write()并在console/debug窗口中查看它 更好

有人能帮我修一下吗。我一按下一个键,它就结束了。 我希望它无限期地更新。 例子 输入:你好 产出:1 输入你好,再见 产出:3

当您执行
document.write()
加载文档后,它将清除当前文档并开始编写新文档。在加载文档后不要使用
document.write()
,除非在极少数情况下您需要这样的效果。这不是你想要的

如果您只是为了调试而尝试查看myArray.length值,请使用
console.log()
而不是
document.write()
并在console/debug窗口中查看它

更好的方法是使用一个javascript调试器(Firefox的Firebug或Chrome、Opera和Safari中的内置调试器),在validate函数中设置一个断点,并在变量发生时检查它。


<HTML>
  <HEAD>
  <TITLE>Test Input</TITLE>
  <SCRIPT LANGUAGE="JavaScript">

  function validate (form) {
  var TestVar = form.inputbox.value;
  myArray = TestVar.split(',');
document.write(myArray.length);

  }
  </SCRIPT>
  </HEAD>
  <BODY>
  <FORM NAME="myform" ACTION="" METHOD="GET">Enter something in the box: <BR>
  <INPUT TYPE="text" NAME="inputbox" VALUE="" OnBlur="validate(this.form)" onkeydown="validate(this.form)" onkeyup="validate(this.form)" ><P>

<script type="text/javascript">validate(this.form);</script>
  </FORM>
  </BODY>
  </HTML>
测试输入 函数验证(){ var TestVar=myForm.inputbox.value; var myArray=TestVar.split(','); document.myForm.textf.value=myArray.length; }

那很容易

加载文档后不要使用
document.write()
。它将替换整个文档。明白了。函数validate(){var TestVar=myForm.inputbox.value;var myArray=TestVar.split(',');document.myForm.textf.value=myArray.length;}
<HTML>
 <HEAD>
 <TITLE>Test Input</TITLE>
</HEAD>
<BODY>
<form name="myForm">
<input type="text" id="inputbox" onkeydown="validate(form.this)"/>
<input type="text" name="textf"/>
</FORM>
 <SCRIPT LANGUAGE="JavaScript">
 function validate () {
 var TestVar = myForm.inputbox.value;
 var myArray = TestVar.split(',');
document.myForm.textf.value = myArray.length;

 }
</SCRIPT>
</BODY>
</HTML>