2012-05-22 104 views
1

當我單擊錨點時,我發現date未定義。我應該如何確保參數在我傳遞給onclick的自我調用功能的範圍內?JavaScript事件中未定義的參數

var date = today; // today is well-defined at this point. 

html += '<a onclick="(function(obj, myDate) { \ 
     return function() { \ 
      obj.render(myDate.setMonth(myDate.getMonth() - 1)); \ 
     }; \ 
     })(this, date);">&lt;</a>' 

編輯:此HTML有效嗎?

today是明確定義的。這段代碼存在於這個函數中:

Calendar.prototype.render = function(date) { 

} 
+2

我們需要看到更多。另外,您的HTML無效。 –

+0

今天'需要正確定義這個工作,只是fyi。 –

回答

3

當引發一個事件時,它唯一的上下文是窗口上下文。

如果使用on<event>屬性,則必須設置全局變量才能使其在事件回調代碼中可用。