作者knives ()
看板Ajax
标题Re: [问题] 当离开输入框,要怎麽侦测该事件
时间Fri Mar 5 13:37:33 2010
这麽说好了
这个自动完成的js原来是大陆人写的
要套用的话要这样使用
<input name="searchkey" id="searchkey" value="" size="15" class="t_input"
type="text" onclick="auc.handleEvent(this.value ,event);"
onkeyup="auc.handleEvent(this.value ,event);"
onkeydown="closeOpt(searchkey,event);inputKeyDown(event);"
autocomplete="off">
<!-- 下面是自动完成跑出来的选单 -->
<div id="username_menu" class="ajax_selector"
onclick="$('username_menu').style.display='none';" style="display:none">
<ul>
<li>自动完成的资料</li>
</ul>
</div>
可是这样的使用方式并没有判断当我滑鼠离开输入框的事件
在closeOpt(searchkey,event)只有判断当键盘输入 Tab 键 才会关闭
後来我多加一个onblur="closeOpt(searchkey,event);"
但是这样的话,当我在username_menu这个自动完成选单,选取 里面的项目 的时候
因为它的确是离开了输入框,而会执行closeOpt,但是如果不加上这个事件又不能关掉
所以说我要怎麽做才能达到像 Google的自动完成那样
离开输入框就关闭自动完成
※ 引述《knives ()》之铭言:
: 我在输入框 加入onblur之後让它去执行关掉 下拉选单的方法
: 但是这样变成之後在下拉选单按下某笔资料的时候
: 它会判断我已经离开输入框,而去执行onblur事件关掉 下拉选单的方法
: 而不是执行新增某笔资料进输入框的事件
: 请问我倒底该怎麽设计
: ※ 引述《knives ()》之铭言:
: : 我有做一个自动完成的功能
: : 可是希望当离开输入框的时候,就把自动完成的下拉选单关掉
: : 可是我设定onchange的时候,按Tab移到别的地方,是有关掉,但是如果我直接将
: : 滑鼠移到其他地方,就不会关掉
: : 用onmouseout也是一样不会有反应,请问我要怎麽设定事件去关掉
: : 谢谢
--
◣ ◢
◢██◣ ~
● ˙ ˙
█ ◥▌ ~● ~
● ◤◤◥◥
◤□︵□▌ ~
● ~
● > <
◥
o◤
~● ◥ █ ◤
▅◤.██.◤
世 界 波 ㄉ 洨 攻 击 ◢ ▼ ◤
--
※ 发信站: 批踢踢实业坊(ptt.cc)
◆ From: 210.209.141.216
1F:→ emn178:选取後就关闭的行为有什麽不对的吗 03/05 18:05