我遇到了jQuery函数clone()
的问题。我认为问题出在此方法的withDataAndEvents
输入参数中。
最初,我正在编写一个包含动态行的表。我在点击仅放在第一行的按钮时动态添加行。第一行最初包含许多输入字段和组合框。每个字段都由ajax调用初始化。并且字段上的每个操作都会导致对行的整个字段进行刷新(过滤)。我还在输入字段上使用自动填充功能。
第一行完美无缺。但是,在克隆标记时:
我写的代码太长,所以我创建了一个fiddle并简化了案例并仍然遇到了同样的问题。
我尝试了许多建议,例如我this,this one或this one徒劳无功:-(
(data.('autocomplete', null)
,autocomplete("destroy")
...)
您对此问题有什么想法吗?
提前致谢
答案 0 :(得分:1)
除了测试中的拼写错误(您按类选择而不是按ID选择新元素),基本问题是您在将自动填充添加到DOM之前应用自动填充。
JSFiddle:http://jsfiddle.net/TrueBlueAussie/87jcw1y0/2/
我刚刚颠倒了这两行的顺序:
$('.body').append(clone);
applyAutoComplete2('#myinput' + inc);
原因......某些插件使用与DOM元素关联的存储数据,或者将事件附加到祖先等。对于断开连接的DOM元素,这些都不会发生,所以只需先将它附加到DOM。
答案 1 :(得分:0)
我想你问这个 请查看此链接http://jsfiddle.net/bsarunmca/87jcw1y0/3/
applyAutoComplete1( '#为myInput1');
$("button").click(function() {
inc = inc+1;
$('#myinput1').clone().attr('id','myinput'+inc).appendTo('.add-this');
$('#myinput'+inc).val('');
applyAutoComplete2('#myinput'+inc);
});