2014-07-17 69 views
0

我需要通過傳遞給類的引用的方法,這樣我就可以訪問VAR:在方法中訪問此?

我曾嘗試:

p.id = 1; 
p._initEvents = function(){ 
    $('#file-form').on('valid.fndtn.abide', this.save.bind(this)); 
}; 


p.save = function(){ 
    console.log(this.id); 
} 

剛剛通過的文件形式的參考。

我也曾嘗試:

var self = this; 
p._initEvents = function(){ 
    $('#file-form').on('valid.fndtn.abide', this.save.bind(self)); 
} 


p.save = function(){ 
    console.log(self.id); 
} 

這將產生不確定的。

我知道this.id設置正確。我哪裏錯了?

+1

嘗試:p.save =函數(ELEM){ 的console.log(elem.id); } –

+0

你甚至可以在'on'回調中存儲對變量的引用... – j809

+0

有人可以告訴我'bind(this)'在這裏有什麼作用..? –

回答

0

我認爲您正在尋找訪問p.savep

下面是一個選項:

p.id = 1; 
p._initEvents = function(){ 
    $('#file-form').on('valid.fndtn.abide', this.save.bind(p)); 
}; 


p.save = function(){ 
    console.log(this.id); 
}