【发布时间】:2014-03-16 02:36:11
【问题描述】:
好的,现在是上午 01:16,我无法解决这个简单的问题。 我使用不可见的 iframe 上传照片并将一些文本发送到数据库。 iframe 指向 upload.php 并返回带有 insert_id 的隐藏文本字段(数据库中最后一行的 id) - 我需要此信息用于其他功能。
这是我的 iframe:
<iframe name="image_upload_frame" id="image_upload_frame" height="1" width="1" style="visibility: hidden">
一开始是空的,但是上传图片后有这个html:
echo '<img src="'.$sImage.'" />';
echo '<input type="hidden" id="session_id" value="'.$wpdb->insert_id.'" />';
这是我获取会话的 javascript)id 值:
var row_id = $("#image_upload_frame").contents().find("#session_id");
alert(row_id.val());
它不起作用。调试器什么也没说 - 它只是停止,没有错误,没有通知。
有人可以帮忙吗?我想听听其他选项如何将数据从 iframe 传递到主窗口。
谢谢,
【问题讨论】:
-
你的javascript什么时候触发?在您创建隐藏 iframe 或该 iframe 的页面加载事件之后立即?如果它在 iframe 准备好之前触发,
$("#image_upload_frame").contents().find("#session_id")将不会得到任何结果。 -
“好吧,现在是上午 01:16,我无法解决这个简单的问题。” - 睡一觉,明天早上你可能会带着解决方案醒来,喝完第一杯咖啡和早餐后;它有一个新的开始;-)
-
我注意到的一件事是您“似乎”在使用会话。我可能会为您提供解决方案,但我需要查看更多代码。如果你不使用会话,那么这可能是一个解决方案,它也适用于 JS;在一定程度上。
标签: javascript php jquery iframe jquery-selectors