DOM中隐藏的输入字段?

时间:2011-06-09 18:07:24

标签: javascript jquery html dom

我有一个问题,隐藏字段不属于DOM的尴尬问题;至少我用JavaScript无法找到它。字段具有“id”和“name”属性,它在表单中,具有值,并且在浏览器中查看视图源时可以看到。因此,我将一个单击处理程序附加到一个按钮,该按钮使用document.getElementById或使用jquery选择器(选择器的任意组合,Id,类名等)查找隐藏字段,并且它不是DOM的一部分。这怎么可能,或者甚至可能?如果这可能是什么原因?

编辑: 标记很大,所以我不想在这里粘贴它。我的问题基本上是,DOM中是否可能缺少隐藏字段。人们为什么要投票呢?这不是一个有效的问题吗?

2 个答案:

答案 0 :(得分:0)

可能该字段已被删除,浏览器viewsource不关心DOM的更改(这只是他从服务器获得的响应)。
使用例如firebugs HTML-tab检查当前的DOM。

答案 1 :(得分:0)

如果您的javascript代码按原样运行,即不在DOM就绪事件中,而是在文档的正常流程中,则可能。如果你的javascript代码放在声明这个隐藏字段的html之上,那么浏览器将在它有机会创建elemeent之前执行javascript。您可以在视图源中看到它,因为到那时浏览器已经呈现了所有内容。

所以我的盲目猜测是你的js代码在DOM ready事件中的NOT中。我很可能是错的。请发布尽可能少的html标记和css以及javascript来重现此问题。您可以使用jsfiddle.net与我们分享代码......