我有以下代码,
var contentFrame = window.document.getElementById("globalSearch");
var content = contentFrame.document.getElementById("globalSearch");
请问有人可以告诉我上面两行之间有什么区别。在FF我收到错误'contentFrame.document未定义'
我的表格如下所示,
<form id="Search" action="<c:url value="/search" />" method="get">
<input .... />
<iframe style="visibility : hidden;position : absolute;top : 0; border : 1px solid WindowFrame;"frameborder="0" src="<c:url value="/search" />"
id="globalSearch" name="globalSearch"></iframe></form>
无论如何我可以摆脱上述错误吗?如果有人在jquery中为我提供了适用于所有浏览器的等效代码,我会很高兴。
再次感谢你!
实际上,在我的应用程序中,每个页面都使用了一个模板。模板有页眉,页脚菜单html。下面显示的表单在header.html
中定义<form id="Search" action="<c:url value="/search" />" method="get">
<input .... />
<iframe style="visibility : hidden;position : absolute;top : 0; border : 1px solid WindowFrame;" frameborder="0" src="<c:url value="/search" />" id="globalSearch" name="globalSearch"></iframe>
</form>
这就是代码提供全局搜索iframe id(考虑作为父页面的子元素)的原因,如下所示,
var contentFrame = window.document.getElementById("globalSearch");
var content = contentFrame.document.getElementById("globalSearch");
this->content=$(#globalSearch").contents();
会在这种情况下有效吗?请澄清。提前致谢。这非常紧迫。请帮忙。
答案 0 :(得分:0)
var contentFrame = window.document.getElementById("globalSearch");
var content = contentFrame.document.getElementById("globalSearch");
只有第一个陈述才有意义;第二个依赖于第一个,并会在ID为globalSearch
的iframe中搜索globalSearch
。
顺便说一下,你可以稍微缩短第一个陈述:
var contentFrame = document.getElementById('globalSearch')
您无需指定window
。