【发布时间】:2010-11-29 22:24:40
【问题描述】:
...在我需要检查的一个元素的上下文中?
我从来没有遇到过在没有 jQuery 的情况下使用 iframe 上传的问题,但现在我考虑从包含表单 iframe 的 ajax 回调上传:
<form enctype="multipart/form-data" action="get.imageupload.php" id="upload_form" method="post">
<input name="userfile" type="file" id="file" />
<input type="submit" name="action" value="start" />
<input type="hidden" name="id" value="<?=$id;?>" />
<iframe id="upload_target" name="upload_target" src="" style="width:0;height:0;border:0"></iframe>
</form>
还有下面的js:
$("#upload_form").submit(function() {
$(this).attr("target","upload_target");
$("iframe", this).load(function() {
var ret = $("iframe", "#upload_form").contents().find("body").html();
var data = eval("("+ret+")");
if (data.success) alert("success"); // todo
if (data.failure) alert("fail"); // todo
});
return false;
});
我必须处理来自get.imageupload.php 的返回 JSON 数据的请求,因此 js 看起来像这样。
问题是:load(fn) 不起作用; ready(fn) 相反,但 iframe 是空的,因为在上传开始之前触发了一个事件......我是 jQuery 的新手,也许还有另一种方法?
有什么想法吗?
感谢
【问题讨论】: