簡體   English   中英

JS:jquery中的對象“ click”的調用方法

[英]JS: call methods of an object inside jquery “click”

我對眾多錯誤之一有根本的誤解。 我使用jQuery。

我有一個對象定義為:

var terms = {};

terms.clear_history = function(a, b)
{ /* DO SOMETHING */ }

我可以在我的主要js文件中調用terms.clear_history(1,2)函數,沒問題。 但是,當我嘗試通過<a/>元素的“點擊”調用它時:

$(document).on('click', '#clearterms', function(){
    terms.clear_history(1, 2);
    });

它給了我以下錯誤:

未捕獲的TypeError:對象#沒有方法'clear_history'

我了解我對這里的基本知識不了解...

謝謝!

聽起來像是范圍問題。 也許全局范圍內的terms與給定方法的分配給clear_history的terms相同。 另外,您也不想以此命名參數, this是JS中的保留關鍵字。

嘗試這個:

window.terms = {};
window.terms.clear_history = function(foo,bar){console.log(foo,bar);};

//then later:
$(document).on('click', '#clearterms', function(){
    window.terms.clear_history(1, 2);
});

暫無
暫無

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

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