如何使用javascript从开启窗口viewsource中删除元素

时间:2010-04-22 06:41:29

标签: javascript html

第1步

我有两个屏幕,一个是父母,另一个是孩子。 单击父窗口中的按钮时,子弹出窗口将打开。

第2步

单击子项中的按钮,我在文本框(.net)中显示父窗口的html(viewsource),并保存在隐藏变量hdnSource中。

第3步

我在子窗口中有4个复选框。

如果未选中该复选框,则应删除该部分html。

例如:cbxPersonal,cbxProfessional

如果未选中cbxProfessional,我应该从htmlSource中的html中删除divProfessional并显示在文本框中

任何人都可以帮我完成编码的第3部分。

由于html在变量中,我无法找到带有document.getElementById的div

1 个答案:

答案 0 :(得分:0)

尝试从HTML字符串中获取有关黑客攻击的内容将会令人烦恼并且越来越多。相反,在将DOM节点转换为HTML字符串之前,请在DOM节点上执行删除。

为了避免实际从父页面的可见DOM中删除实际div,请在对它们进行操作之前克隆节点。例如

var copy= opener.document.body.cloneNode(true);

if (!document.getElementById('cbxPersonal').checked) {
    var div= copy.getElementById('divPersonal');
    div.parentNode.removeChild(div);
}

var html= copy.innerHTML;