我有JavaScript創建一個通用選擇框,當您雙擊表格單元格中,當一個選項被單擊時,選擇框被刪除,選定的選項被記錄下來。表格單元格顯示所選的選項。但是,如果表格單元格被雙擊並且創建了選擇框,但是您只是在沒有選擇選項的情況下單擊選擇框,則選擇框將保持不變,並且隨後頁面的其餘部分將斷開。在Javascript中選擇框觸發事件
我想要選擇框被刪除,如果焦點丟失,但與輸入框一起工作的onblur方法似乎不適用於選擇框。
有誰知道什麼事件被觸發?
Javascript代碼,當表格單元格被雙擊做出一個選擇框:
var object_input = document.createElement ("SELECT"); //Put an select box in the cell
object_input.setAttribute("name", "course_price_select");
object_input.setAttribute("id", "course_price_select");
object_input.style.width = (current_cell.clientWidth - 20) + "px";
object_input.attachEvent ("onblur", focus_lost);
object_input.attachEvent ("onkeypress", checkForEnter);
這兩行不工作! (FOCUS_LOST和checkForEnter方法開始警報(「你好」);所以我知道他們沒有被觸發)
object_input.onchange = function() {focus_lost()};
//Populate with options....
'attachEvent'特定於IE。嘗試使用'addEventListener'。 – BenM 2013-02-20 11:18:38
奇怪的是,我在我的輸入框中使用attachEvent,它在所有瀏覽器上都能正常工作。 – 2013-02-20 11:25:50
對不起,那根本不可能。例如> http://jsfiddle.net/sFx7u/1/在Chrome中不會觸發,除非您在我的答案中使用示例。它觸發'Uncaught TypeError:Object#沒有方法'attachEvent'。 'attachEvent'是僅限IE的! –
BenM
2013-02-20 11:28:06