我有一个复选框,当用户点击它时,我希望它更改私有变量output
。然后我想将对象的属性更新为输出。在下面的代码中,我无法让更改事件发挥作用我相信它是因为我不知道如何通过Module模式与DOM元素进行交互。所以,如果你可以帮忙,那就太好了。
我担心的其他问题是,我希望在用户点击时更新apple
对象中的价格变量。每次用户点击复选框时,价格都会将值更改为随机数。我总是在更新事件之外更新问题,就像在我的代码中看到的那样。 apple.price
是外部变更事件。如果你能帮助我,我也将非常感激。
var CreatItems = function(name, price, pic){
this.name = name;
this.price = price;
this.pic = pic;
}
CreatItems.prototype.listOut = function(){
console.log(this.name + this.price + this.pic)
}
var changingPrice = (function(){
// testMethod : function(){
// return 1.77
// }
var output;
var testMethod = function(){
return output
}
var clickedWithOnes = function(){
$("#withones").change(function(){
if(this.checked){
// output = "checked";
console.log("Checked")
}else{
// output = "unchecked";
console.log("unchecked")
}
})
}
return{
testMethod : testMethod,
clickedWithOnes : clickedWithOnes
}
})()
changingPrice.clickedWithOnes()
var price = changingPrice.testMethod()
// console.log(price)
var apple = new CreatItems("apple", price, "will be red div")
console.log(apple.price)
我得到安慰"未定义"
答案 0 :(得分:0)
您好我为您创建了商品详情:link here new
你有下一个问题,你工作得很好,你只有一个问题:当你返回output
值时,它会返回一个值,但如果你想保持output
之间的联系和新的apple
变量一样,你应该像对象一样返回它,在这种情况下,它不会像值那样返回,而是像对象链接那样返回。