簡體   English   中英

在Java中選擇框觸發事件

[英]Select Box Trigger Events in 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方法以alert('hi')開頭;因此我知道它們沒有被觸發)

object_input.onchange = function() {focus_lost()};

//Populate with options....

attachEvent是僅IE的函數。 您還應該使用addEventListener綁定事件,例如:

if(object_input.addEventListener)
{
    object_input.addEventListener('blur', focus_lost);  
    object_input.addEventListener('keypress', checkForEnter);
}
else
{
    object_input.attachEvent('onblur', focus_lost);  
    object_input.attachEvent('onkeypress', checkForEnter);
}

您可以在此處看到j​​sFiddle 演示

您應該注意, addEventListener不需要將事件附加在on ,而attachEvent則需要。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM