【发布时间】:2011-05-11 02:40:44
【问题描述】:
我目前正在制作一个表单,其中包含一些用于上传图片的文件输入。对于那些将图片提交到iframe 的输入,有一个onchange() 事件,然后将上传的图片动态加载到表单中,并为它们修改字段(如 name 和 地理定位)。
由于我不能嵌套表单,file_input 也包含在 iframe 中。最后,我在另一个iframe 中使用了iframe。所以我有这样的事情:
<form>
<!-- LOTS OF FIELDS!! -->
<iframe src="file_input_url">
<!-- iframe which loads a page of a form with a file input-->
</iframe>
</form>
加载到iframe 中的HTML 类似于(不包括html、head 和body 标签)
<form target="upload_iframe">
<input type="file" onchange="this.form.submit()">
</form>
<iframe name="upload_iframe"></iframe>
这很好用,除了加载第一个iframe 需要几秒钟的时间,因此文件输入不会与页面的其余部分一起加载。这在视觉上并不理想。如果我可以指定iframe 内容而不需要加载另一个页面(由第一个iframe 中的file_input_url 指定),我可以解决它。
有没有办法在同一个文档中指定iframe的内容,还是只能用src属性指定,需要加载另一个页面?
【问题讨论】:
-
加载该 iframe 不应花费“几秒钟”的时间。我希望它更像是十分之一毫秒加上“咬咬时间”(也应该是毫秒)。您应该调查导致所有延迟的原因 - 可能是您的服务器出了问题。
-
还有一种奇怪的方式
<iframe src="javascript:parent._renderMe()"></iframe>和js中:function _renderMe() {return String(Math.random()}