<script language="Javascript">
function test(myObject, flag)
{
if ( (flag) || ((event.keyCode == 59) || (event.which == 59)) || ((event.keyCode == 44) || (event.which == 44)))
{alert(myObject.value);}
}
function closeWin()
{self.close();}
</script>
<form name='test'>
<textarea name='textareaName' cols='44' rows='3' onChange='test(this, true);' --onKeyPress='test(this);' onBlur='test(this, true);' ></textarea>
<input type='text' name='textName'>
<input type='button' name='buttonName' onclick='closeWin();' value='Cancel'>
</form>
我有个问题:当输入值(例如:test;)输入到textareaName
字段中,测试函数总是运行一次以上。请告诉我只能运行一次的方法。
1条答案
按热度按时间n53p2ov01#
因为您要将
test
函数添加到onKeyPress
(每次按下键时)、onChange
(每次更改时)和onBlur
(每次移动到另一个字段时)它正在执行您要求它执行的操作,您应该删除其中一个事件处理程序。