toString()在使用传递参数时出错
toString() giving error when using to pass parameter
toString 在将其用作
时出现错误 cannot read property 'toString()' of undefined
document.getElementById('pMonth').addEventListener('click',function(){ calen(this.year.toString()+'-'+(this.currentMonth1-1).toString());},false);
但是代码在使用 as
时运行良好
var tr=this.year.toString()+'-'+(this.currentMonth1-1).toString();
document.getElementById('pMonth').addEventListener('click',function(){ calen(tr);},false);
this.year
和this.CurrentMonth1
是数值!!
请告诉我哪里出错了!
您需要将上下文绑定到您的事件处理程序,因为 this
将引用从 document.getElementById('pMonth')
返回的 DOM 元素
所以你需要:
document.getElementById('pMonth').addEventListener(
'click',
function(){
calen(this.year.toString()+'-'+(this.currentMonth1-1).toString());
}.bind(this),
false
);
toString 在将其用作
时出现错误cannot read property 'toString()' of undefined
document.getElementById('pMonth').addEventListener('click',function(){ calen(this.year.toString()+'-'+(this.currentMonth1-1).toString());},false);
但是代码在使用 as
时运行良好var tr=this.year.toString()+'-'+(this.currentMonth1-1).toString();
document.getElementById('pMonth').addEventListener('click',function(){ calen(tr);},false);
this.year
和this.CurrentMonth1
是数值!!
请告诉我哪里出错了!
您需要将上下文绑定到您的事件处理程序,因为 this
将引用从 document.getElementById('pMonth')
所以你需要:
document.getElementById('pMonth').addEventListener(
'click',
function(){
calen(this.year.toString()+'-'+(this.currentMonth1-1).toString());
}.bind(this),
false
);