javascript 警报显示两次,如何限制?

6xfqseft  于 2023-01-04  发布在  Java
关注(0)|答案(1)|浏览(155)
<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字段中,测试函数总是运行一次以上。请告诉我只能运行一次的方法。

n53p2ov0

n53p2ov01#

因为您要将test函数添加到onKeyPress(每次按下键时)、onChange(每次更改时)和onBlur(每次移动到另一个字段时)
它正在执行您要求它执行的操作,您应该删除其中一个事件处理程序。

相关问题