Javascript Jquery克隆函数
有没有办法通过JQUERY克隆函数定制html,比如说我有一个divJavascript Jquery克隆函数,javascript,jquery,Javascript,Jquery,有没有办法通过JQUERY克隆函数定制html,比如说我有一个div <div id="my_Div" style="margin-right:14px;"> Name : <input type="text" name="file_name[]" id="file_name" class="validate[required]"/> Choose File :
<div id="my_Div" style="margin-right:14px;"> Name :
<input type="text" name="file_name[]" id="file_name" class="validate[required]"/>
Choose File :
<input type="file" name="upload_file[]" id="upload_file" class="validate[required]" onChange="getFileExtension('upload_file');"/>
</div>
我可以复制html,但我想定制
<input type="text" name="file_name[]" id="file_name" class="validate[required]"/>
i、 e
有什么帮助吗?如果我正确理解您的问题,您希望自定义您得到的克隆副本。虽然没有内置的方式,但您可以采用您想要更改的逻辑并将其放入一个函数中,然后进行调用,如下所示:
var i = 1;
var tmp = $('#my_Div').clone();
var inp = tmp.find('#file_name');
inp.attr('id', inp.attr('id')+i);
i++;
tmp.appendTo('body');
I would add class to all inputs, for example class="changeable" and add:
$('.changeable').on('change', function() {
//do something
});
clonedElement.attr('id', function () {
// logic
});
更多详细信息可在此处找到:不,您不应使用克隆函数或在克隆函数内执行此操作,尤其不应通过操纵html字符串来执行此操作。最好这样做:
var c = $('#my_Div').clone().appendTo('body');
var i = c.find("#file_name").attr('id', "file_name0");
for (var i=1; i<3; i++)
i.clone().appendTo(c).attr('id', "file_name"+i);
var c=$('my#u Div').clone().appendTo('body');
var i=c.find(“#文件名”).attr('id',“文件名0”);
对于(var i=1;ivar clone=$(“#my_Div”).clone();
使用jquery函数编辑html,然后将clone
var追加到正文中
clonedElement.attr('id', function () {
// logic
});
var c = $('#my_Div').clone().appendTo('body');
var i = c.find("#file_name").attr('id', "file_name0");
for (var i=1; i<3; i++)
i.clone().appendTo(c).attr('id', "file_name"+i);