Re: [問題] 當離開輸入框,要怎麼偵測該事件

看板Ajax作者時間15年前 (2010/03/05 13:37), 編輯推噓0(001)
留言1則, 1人參與, 最新討論串3/3 (看更多)
這麼說好了 這個自動完成的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也是一樣不會有反應,請問我要怎麼設定事件去關掉 : : 謝謝 -- ◢██◣ ˙ ˙ ~● ◤◤◥◥ □︵□ > < ~● .██.世 界 波 ㄉ 洨 攻 擊 -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 210.209.141.216

03/05 18:05, , 1F
選取後就關閉的行為有什麼不對的嗎
03/05 18:05, 1F
文章代碼(AID): #1Ba9YWUr (Ajax)
文章代碼(AID): #1Ba9YWUr (Ajax)