这几天在做一个图片上传功能,原本想用ajax上传图片实现即时刷新php获取flash上传视频,可是仍然实现不了,后来用了iframe框架来实现了。现在就分享给你们,也给你们做个参考。希望对你们有所帮助。
不过这个用这框架竟存在一个问题,当我吧图片上传之后我要把上传的路径返回至这框架中,那么如何取下来,开始我把值直接输出至iframe中,但是我去取出路径的时侯始终没反应,一直在网上查看资料,但是各类版本就是没有一个全面的讲解如何使用iframe上传图片之后实现实时刷新的功能,只能自己研究了。大多数都是说如何上传就可以了,这个我也会,都断在这还真使人恶心,只能自己研究了
既然iframe中上传成功后输出值至页面中,无法取下来,试了N中技巧,查了N多资料,还真是使人悲催。
后来在iframe中加个src,再在图片上传成功后输出值写成一条简略的javascript句子输出就OK了,嘿嘿。总结一下吧:
html代码:
//iframe设置成隐藏的,src链接的页面为图片上传的后台文件页面,不过加不加影响都不大,只不过为了更精确而已
//表单的那么值对应着空框架的那么值,提交后跳转到空框架中,这样就不对父窗口页面进行刷新了
提交至后台upload.php页面验证后。都会有一个自己设置的路径生成
那么我们更新图片成功后php获取flash上传视频,就可以把这个路径拿出来,通过JS改变父窗口中图片框中图片路径,重新形参一下,这样就相当于是刷新一下地址了,而不用每天更新成功后都得去数据库把保存的路径地址取下来更新了。
这里我只写要返回的js代码
echo "window.parent.document.getElementByIdx_x('tag_img').setAttribute('src','$updurl');";
//这就是在框架中输出一段js代码,然后操作父框架中图片地址刷新成我上传的图片地址,$updurl为上传图片的地址
这样能够轻松实现图片上传无刷新页面,且图片实现及时刷新了。