javascript逗号计数器

时间:2011-10-06 00:29:31

标签: javascript html javascript-events

<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>

有人可以帮我解决这个问题。只要按下一个键,它就会结束。 我希望它无限期更新。 例 输入:你好 输出:1 输入你好,好,再见 输出:3 ...

2 个答案:

答案 0 :(得分:2)

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

如果您只是想查看myArray.length值用于调试目的,请使用console.log()代替document.write()并在控制台/调试窗口中查看它。

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

答案 1 :(得分:0)

<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>

这很容易。