当前位置:  开发笔记 > 编程语言 > 正文

使用cloneNode后如何维护正确的Javascript事件(true)

如何解决《使用cloneNode后如何维护正确的Javascript事件(true)》经验,为你挑选了1个好方法。

我有一个包含多行输入的表单元素.将每一行视为我想在Web应用程序中创建的新对象的属性.而且,我希望能够在一个HTTP POST中创建多个新对象.我正在使用Javascript的内置cloneNode(true)方法来克隆每一行.问题是每个输入行还有一个附加到其onclick事件的删除链接:

// prototype based

单击克隆的输入行的删除链接时,它还会删除从同一个dom对象克隆的所有输入行.在上面的DOM元素上使用cloneNode(true)后,是否可以将"this"对象重新绑定到正确的锚标记?



1> Kornel..:

不要在每个链接上放置处理程序(这实际上应该是一个按钮,BTW).使用事件冒泡来处理具有一个处理程序的所有按钮:

formObject.onclick = function(e)
{
    e=e||event; // IE sucks
    var target = e.target||e.srcElement; // and sucks again

    // target is the element that has been clicked
    if (target && target.className=='remove') 
    {
        target.parentNode.parentNode.removeChild(target.parentNode);
        return false; // stop event from bubbling elsewhere
    }
}

+

推荐阅读
coco2冰冰
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有