我正在使用表单的target属性与jquery / php进行文件上传异步。目标是我的名为“uploads”的iframe;为了管理php文件中的错误,我返回一个像“ERR_TOO_LARGE_FILE”这样的字符串,其回显位于iframe体内。
问题是我不知道如何检测iframe何时准备就绪并访问其内容以查看是否存在错误。我尝试了以下代码,但它不起作用:
$("#uploads").on("load", function() {
alert($(this).html());
});
警报框确实出现了,但内部没有任何内容。我也尝试使用ready事件,但这次没有出现。
如果你有一个更好的方法,想知道实现这个或替代解决方案的方法。
答案 0 :(得分:4)
因为你不允许修改iframe的内容,至少你不应该这样做,你不能使用jquery直接访问它。使用.contents()
& .find()
从iframe获取html,以便您获得所需的信息。
所以,
$("#uploads").on("load", function() {
alert($(this).contents().find('html').html());
});
应该返回iframe中html的内容。如果您知道要查找的特定元素,则可以将'html'替换为标记ID。