for (i; i < ChildArr.length; i++) { if (ChildArr[i].NAME != null && Pid == ChildArr[i].PARENT_ID) { childId = ChildArr[i].ID; $("#" + Pid + "l").append("<li style=\"display:block;\" id=\"" + childId + "\" ondblclick=\"FindPid(\'" + childId + "\')\" onclick=\"showli(\'" + childId + "\')\">" + ChildArr[i].NAME + "</li>"); ChildArr[i].NAME = null; Alchild(ChildArr, childId); } function FindPid(pid) { document.getElementById("P_id").value = pid; document.getElementById("P_name").value = document.getElementById(pid).value; if (document.getElementById("P_id").value != " ") { document.getElementById("btn_reset").onclick(); } }
点击li后findpid()正确执行一次后,跳到页面顶部然后出现重复执行findpid(),直到pid是树的父id才停止执行
混乱, ondblclick onclick, 我就从来没正常用过。。。。 兼容性不好。
所以说, 你可以用jquery+双击单击插件来做。 可以给你节省时间。
只有一个onclick事件是也会出现重复执行调用函数,怎么回事
@Djony: 你这个是树状的吧, 那你可以看看关于js中的冒泡事件, 然后消除冒泡效果。 问题就解决了。
依然建议你用jquery做, 否则兼容性烦死你。