我是jquery的新手,所以请原谅我的误解。 我使用这段代码:
$(".redbox").delegate("input[type=checkbox]", "change", function(){
var index = this.id.substring(8);
$(".inputfield" + index).toggleClass("complete");
});
在输入文本字段的输入上切换类。 起初这个代码工作得很好,但是因为我用jquery附加了整个代码, delegate()使所有复选框和输入字段切换。
您可以在此代码中看到我的意思:http://jsfiddle.net/eD5M5/
点击我--->附加追加按钮 追加按钮---->附加复选框和输入字段(+删除按钮)
当切换类看起来很好的时候点击追加! 但是当你多次点击并开始切换时,一切都会切换!
我的问题是;
我做错了什么,我该如何解决这个问题?
提前致谢
答案 0 :(得分:1)
他们都被赋予同一个班级,而你是按班级选择的,所以它会对他们产生影响。
不要按类选择,只需使用.next()
从复选框遍历到文本字段。
示例: http://jsfiddle.net/eD5M5/3/
$(this).next().toggleClass("complete");
答案 1 :(得分:1)
这是因为您没有递增计数器,因此所有输入都具有相同的类:check the fix