Javascript onclick和对象的标识
我希望这仍然有意义。我身上没有代码,但我想知道如何才能做到这一点。问题出在“Javascript onclick和对象的标识,javascript,onclick,prototype,Javascript,Onclick,Prototype,我希望这仍然有意义。我身上没有代码,但我想知道如何才能做到这一点。问题出在“onclick=\”thatThing.doSmthg()\“” 结果是“那东西没有定义” 谢谢 var oneThing = new Thing(); letsDoSmthg(oneThing); letsDoSmthg(thatThing){ document.getElementById("fezok").innerHTML+="<input type=\"button\" value=\"Do
onclick=\”thatThing.doSmthg()\“
”
结果是“那东西没有定义”
谢谢
var oneThing = new Thing();
letsDoSmthg(oneThing);
letsDoSmthg(thatThing){
document.getElementById("fezok").innerHTML+="<input type=\"button\" value=\"Do smthg\" onclick=\"thatThing.doSmthg();\">";
}
function Thing(){
this.variable1=0;
}
Thing.prototype={
doSmthg: function(){
this.variable1=1534;
},
var-oneThing=新事物();
letsDoSmthg(网心科技);
让我们谈谈(那件事){
document.getElementById(“fezok”).innerHTML+=“”;
}
函数事物(){
这个变量1=0;
}
事物原型={
doSmthg:function(){
这个变量1=1534;
},
不要使用字符串创建HTML。请使用元素
var letsDoSmthg = function(thatThing) {
var button = document.createElement('input');
button.type = 'button';
button.onclick = function() {
thatThing.doSmthg();
};
document.getElementById("fezok").appendChild(button);
};
您应该创建实际的DOM元素并使用
addEventListener()
通过闭包传递函数。如果我不想使用dom元素怎么办?@user2090805然后不进行web开发?我切换到了dom元素……但我的意思是出于好奇,如果dom不存在,我该怎么做?@user2090805如果dom不存在,HTML也不存在,毫无疑问OK nvm先生无所不知