为什么我的函数运行多次?Javascript点击事件触发多次?
var s,
getData = {
settings: {
gender: $("input[name='gender']"),
age: $("input[name='age']")
},
init: function() {
s = this.settings;
this.getInput();
},
getInput: function() {
for (i in s) {
s[i].on("click", function() {
s[i].off();
console.log(this.getAttribute('value'))
});
}
},
};
我觉得奇怪的是,当我不点击相同的输入两次它只运行一次。举例来说,如果我点击“男”,然后“女”它会显示在控制台
(1) male
(2) female
这在逻辑上是有意义的我,如果我点击“男性” 5次,然后我得到
(14) male
它只是越来越大。
编辑: JSFiddle如果打开控制台,您可以看看会发生什么
为什么复杂的代码? – madalinivascu
发布您的代码? – passion
@madalinivascu为什么它很复杂?它是模块化的代码,这是更清洁的imo。 –