我有这个jquery tat我正在使用小提琴(使用它来处理我的网站进行测试)。
$(document).ready( function() {
var regex = /^(.*)(\d)+$/i;
var cloneIndex = $(".clonedInput").length;
$("button.clone").click(function(e){
$(this).parents(".clonedInput").clone()
.insertBefore(copy)
.attr("id", "clonedInput" + cloneIndex)
.find("*").each(function() {
var id = this.id || "";
var match = id.match(regex) || [];
if (match.length == 3) {
this.id = match[1] + (cloneIndex);
}
});
cloneIndex++;
return false;
});
$("button.remove").click(function(){
$(this).children(".clonedInput").remove();
});
});
我遇到的两个问题,可能是由一个问题引起的,当我删除其中一个“克隆”字段时,它会删除除父级之外的所有其他字段,当我克隆一个字段时,它只能工作离开父母并保留原始值......
任何帮助将不胜感激!
答案 0 :(得分:0)
正如我在评论中所说,我使用on
方法来实现你想要做的事情
click
方法是bind
方法的别名。 bind
方法不是动态,您将事件绑定到节点,这就是全部。 live
和delegate
方法是动态的,它们不只是将事件绑定到节点,而是检查事件和节点是否匹配(我将解释)。
最后,on
方法可以协调这3种方法。这就是我所做的:
// On all the <form>s
$('form')
.on(
// When we click inside the <forms>
'click',
// If the clicked element match the selector, so if it has the clone class
'.clone',
// We do stuff
function(){
// Do stuff
});