2011-08-15 59 views
0

我有一個JavaScript控件中有這樣的東西,有人跟我(有人問他是否在度假),如何訂閱這個事件。JavaScript和訂閱事件

if(typeof(pnlDialog.onclose) == 'function') 
    pnlDialog.onclose(); 

我以爲這是類似的東西,但沒有成功。

var mycontrol = document.getElementById('myDialog'); 
mycontrol.attachEvent('onclose', function() 
{ 
     alert('closed'); 
}); 

回答

2

看起來它根本沒有使用事件,它只是使用了後期綁定函數。因此,使用這個:

var mycontrol = document.getElementById('myDialog'); 
mycontrol.onclose = function(){ 
    alert("Closed"); 
} 
+0

從技術上講,在JavaScript中的所有功能都是後期綁定。 – cdhowie

+0

這對我有用。 – Jonathan

3

.attachEvent是一個微軟開發的功能,我認爲它幾乎只適用於Internet Explorer。

嘗試 - 閱讀進度 - ,與此語法:

var mycontrol = document.getElementById('myDialog'); 
mycontrol.addEventListener('onclose', function() 
{ 
    alert('closed'); 
}, false); 

的「假」確定函數應在捕獲(真)或鼓泡(假)相來執行。假應該沒問題。

0

好吧,我看到它很簡單

var mycontrol = document.getElementById('myDialog'); 

mycontrol.onclose = function() 
{   
      alert('closed'); 
};