JS中$(document).ready()紧接着对html中的<div>进行clone(true),事件消失.
JS对div中的<input class="pkSeq" type="text" >绑定了一个点击事件.
JS进行如下操作:
$(document).ready(function() {
window.contextPath = localhostPaht+projectName;
/**
* 维护信息窗口克隆
*/
var applSeq=window.parent.applSeq;
var WinId = 1;
var divObj=$("#row_0").clone(true);
$("#addDiv").unbind("click").on("click",function(){
divObj.attr("id","row_"+WinId);
divObj.insertAfter($("#row_"+(WinId-1)));//将clone出的追加到上一个的div后面
WinId++;
});
});
//这是点击事件:`
$(".pkSeq").unbind("click").on("click", function () {})
然后网页中原本的div中的点击事件还存在,而克隆出来的div中的点击事件直接没了.不是不触发,是没了.就像新克隆的div根本没有js一样.想知道为什么.
这种事件绑定不触发是由于你采用的是js绑定,造成的。
解决方法:
1、将绑定方法采用在**元素自身用click等事件**
2、在你复制该元素节点添加进去的操作完成后,再对该元素绑定一次你的事件
将绑定方法采用在 元素自身用click等事件
在你复制该元素节点添加进去的操作完成后,再对该元素绑定一次你的事件