- 浏览: 876143 次
- 性别:
- 来自: 杭州
文章分类
- 全部博客 (341)
- Ajax (1)
- Asp.net (18)
- Java (5)
- Php (27)
- JavaScript (19)
- jQuery (12)
- 正则表达式 (4)
- SEO优化 (1)
- Windows 应用 (5)
- Flash (12)
- Asp (9)
- CSS (10)
- SQL Server (6)
- Flex (1)
- Ubuntu (0)
- mysql (34)
- PHP框架 (2)
- Apache (10)
- html (3)
- 网页切入 (1)
- Linux (33)
- vc++ (38)
- 友情链接 (0)
- firefox 插件 (4)
- SEO (1)
- Apache 压力测试 (1)
- imacros教程(一):imacros变量 (0)
- JS调用imacros所用到的函数 (0)
- imacros教程(三):调用csv文件 (1)
- imacros教程(二):JS调用imacros所用到的函数 (1)
- imacros 常用代码 (1)
- CSS最大宽度 (1)
- svn (1)
- WordPress (1)
- 网线的两种接法 (1)
- TP-LINK WR 系列无线路由器安全设置 (1)
- mysql talble is full ERR1114 (0)
- 解决mysql的内存表“table is full”错误 (1)
- linux 用户操作 (1)
- CentOS 挂载 ntfs 移动硬盘 (1)
- linux 储蓄设备操作 (1)
- Starting MySQL. ERROR! Manager of pid-file quit without updating file. (1)
- extmail 1.1 升级到 1.2 (1)
- extmail (0)
- emos (2)
- squid 3.0 (2)
- centos 6 minimal 安装 (1)
- linux实用命令详解 (1)
- win7 (1)
- php 字符串大小写转换 (1)
- 跟踪路由 tracert (1)
- css英文单词首字母添加样式 (1)
- jquery iframe 操作 (1)
- php 获取时间今天明天昨天时间戳 (1)
- php 上传限制 (1)
- ckeditor 配置 (1)
- flash 显示在 div 下 (1)
- flash + php 留言本乱码问题 (1)
- squid purge 出现 access denied 的解决方法 (1)
- delphi (1)
- 让delphi嵌入的WebBrowser无边框无滚动条 (1)
- delphi打开一个IE窗口 (1)
- delphi 获取鼠标当前位置的相对坐标 (1)
- delphi 获取可执行文件的当前路径 (1)
- delphi webbrowser 常用方法示例 (1)
- javascript 禁止鼠标右键... (1)
- delphi 播放gif 动画 (1)
- delphi弹出信息框大全 (1)
- Delphi中禁止WebBrowser右键的方法 (1)
- DELPHI 让程序只能运行一次 (1)
- Delphi XE2 破解补丁注册机下载使用教程 (1)
- Delphi RAD Studio XE2编译程序体积大的问题 (1)
- delphi 制作圆角窗口 (1)
- delphi 窗口 (1)
- delphi 窗体全透明,但窗体上的控件不透明 (1)
- delphi 窗口阴影 (1)
- delphi 获取任务栏高度 (1)
- delphi bsNone 之后任务栏右键无反应 (1)
- delphi 程序打开隐藏软件任务栏条 (0)
- delphi bsNone后的相关问题解决方法 (1)
- delphi bsNone 后显示边框 (1)
- delphi url编码操作 (1)
- delphi 调用exe文件 (1)
- delphi dll窗体的制作和调用 (1)
- delphi dll 调用窗体时的数据传递 (0)
- delphi 窗口显示在屏幕右下角 (1)
- 内网穿透&UDP打洞 (1)
- delphi idhttp post应用 (1)
- inno setup 开机启动 (1)
- inno setup 添加桌面快捷方式 (1)
- Delphi实现程序只运行一次并激活已打开的程序 (1)
- 解决 float point division by zero (1)
- Delphi 窗体显示在最前面,并获得焦点 (1)
- delphi 点击关闭按钮时隐藏窗口 (1)
- delphi 非客户区右键点击 (1)
- delphi真正可以截获WINDOWS关机消息的源码 (1)
- delphi utf8转码 (1)
最新评论
-
zj7243886:
非常感谢,这东西解决我的问题;谢谢你的分享
Linux 安装 jpeg-6b 错误 ./libtool 命令未找到 -
丶Sk.Mabon:
能让html也绕过吗。。机房限制很悲剧
绕过 <?PHP exit(’Access Denied’); ?> 限制 -
丶Sk.Mabon:
请教gzip.php 的写法。万分感谢!
apache 开启 gzip -
hyxj1220:
火狐中单纯的定义这样的样式,貌似不行,必须要让容器浮动
英文长文本换行CSS -
逆水寒龙:
太好了,正好用上,谢谢博主共享
Asp.net 将中文汉字转换成拼音首字和拼音全拼
iframe无刷新跨域上传文件并获取返回值
通常我们会有一个统一的上传接口,这个接口会被其他的服务调用。如果出现不同域,还需要无刷新上传文件,并且获取返回值,这就有点麻烦了。比如,新浪微博启用了新域名www.weibo.com,但接口还是使用原来的域:picupload.t.sina.com.cn。
研究了一下新浪微博的处理方法,这里大概演示一下。
首先是一个正常的上传页面 upload.html
<script>
// 这个函数将来会被iframe用到
function getIframeVal(val)
{
alert(val);
}
</script>
<!-- 我把upload.com指向了127.0.0.1 -->
<form method="post" target="if" enctype="multipart/form-data" action="http://upload.com/playground/js/deal.php?cb=http://localhost/playground/js/deal_cd.html">
<input type="file" name="file" />
<input type="SUBMIT" value="upload" />
</form>
<IFRAME id="if" name="if" src="about:blank" frameborder='0'></IFRAME>
这里有一个关键点是form的target要指向iframe,同时把iframe隐藏起来,这样上传的处理结果就会显示在该iframe里。action里的cb(callback)参数表示处理完成后要跳转的url,因为我们的目标是iframe,所以只会把跳转的页面输出到iframe,而不会让当前页面跳转。
还有一点,callback url要和当前页面同域。跨域的iframe无法调用父页面的内容。
再来看看deal.php,也就是form的action
<?php
// deal upload file
// and get file id, you can pass other params either
header('location:'.$_GET['cb'].'?file_id=123');
这里可以处理文件,然后入库。操作完成后,把文件的id及其他信息都放在url里,最后跳转到这个url。
最后来看看deal_cd.html,也就是刚刚deal.php跳转到的url,这个文件的内容会填充到页面的iframe里。
<script type="text/javascript">
var rs = window.location.search.split('?').slice(1);
window.parent.getIframeVal(rs.toString().split('=').slice(1));
</script>
这里调用了父窗口的getIframeVal方法,这样父页面就获得了文件的id。
--EOF--
转自 :http://blog.leezhong.com/tech/2011/05/06/crossdomain-upload.html
发表评论
-
javascript div 滚动到底部
2013-03-08 22:46 880var div = document.getElementBy ... -
jquery 数组处理
2012-11-29 16:47 766jQuery的数组处理,便捷,功能齐全. 最近 ... -
jQuery 美元符冲突的解决方法,使用jquery与别的js库共同使用的时候需要注意的地方。
2012-06-20 16:49 778jQuery 美元符冲突的解决方法,使用jquery与别的 ... -
jquery事件机制扩展插件,jquery鼠标右键事件。
2012-06-14 19:25 1261因为最近技术长进缓慢,也没高手带,只能靠自己了,所以想仿个 ... -
JavaScript获取HTML页面源代码
2012-06-13 21:50 1312JavaScript获取HTML页面源代码 <a ... -
fancybox
2012-05-07 03:23 825http://www.beautycss.cn/blog/ar ... -
jquery刷新页面
2012-05-04 17:30 1551jquery刷新页面 局部刷新: 这个方法就多了去了,常见 ... -
jquery iframe 操作
2012-03-07 20:11 1702jquery iframe操作 使 ... -
判断是否已经加载过jquery,没有则加载jquery库
2012-01-17 15:27 1807如果一个项目接手的人比较多或者是以前的老项目,大家肯定碰到过用 ... -
jQuery插件—获取URL参数
2011-08-21 16:30 930jQuery插件—获取URL参数 ... -
js 中文编码
2011-04-16 21:38 2002js 中文编码 2009年08月22日 星期六 21:24 ... -
jquery 弹窗 (转)
2011-01-10 19:22 1868jquery 弹窗 (转) 2010-07-13 10:08 ... -
3款 jquery tab
2011-01-09 01:17 6733一、jQuery idTabs idTabs 是 jQuer ... -
jquery 加载图片
2011-01-07 21:48 703<script type="text/java ... -
javascript 获取浏览器高度宽度
2010-09-28 15:13 1005如何我javaScript获取窗口的高度和宽度 ------- ... -
javascript confirm,alert,prompt用法
2010-09-20 14:41 1271window.confirm 参数就只有一个。显示提示 ... -
Javascript 下拉列表多选
2010-08-27 13:10 1382DropDownList 不能多选,要多选,只能用ListBo ... -
javascript 检测是否按下ctrl 或 alt
2010-08-27 13:08 2264if(event.ctrlKey||event.altKey) ... -
兼容ie6,ie7,ff浏览器添加到收藏夹代码
2010-08-22 17:35 1394<a href="javascript:Add ... -
ie8在iframe中找到当前iframe外的节点
2010-06-04 08:01 1490window.parent.document.getElem ...
相关推荐
下面小编就为大家带来一篇form+iframe解决跨域上传文件的方法。小编觉得挺不错的,现在就分享给大家,也给大家做个参考。一起跟随小编过来看看吧
下面小编就为大家带来一篇文件上传,iframe跨域数据提交的实现。小编觉得挺不错的,现在就分享给大家,也给大家做个参考。一起跟随小编过来看看吧
HTML5 postMessage+iframe实现文件跨域异步上传 http://blog.csdn.net/jiangsyace/article/details/43858443
kindeditor 相信很多人都现在用此编辑器,asp.net开发者也居多,此软件上传文件一开始是需要自己配置的,很多新手一时间不知道要怎么配置,。于是花费了少量时间,帮新手们配置好了,直接引用js文件,便可以上传或者...
使用jquery/jsp/servlet/iframe实现跨浏览器跨全(子)域多文件上传操作.希望能给大家带来帮助.
要通过ajax保存表单,一切都OK,测试也通过,却发现文件没有上传成功!然后就有了用 ajax是否可以上传文件的疑问。
利用iframe对form表单(含文件上传)进行跨任何域提交,无刷新且可以返回值
如果你需要跨域上传内容到另外一个域名并且需要获取返回值,使用Asp.Net的作为代理是最好的办法,要是客户端直接提交到iframe中,由于跨域是无法用javascript获取到iframe中返回的内容的。此时需要在自己的网站做一...
用于上传表单数据的 Javascript 插件,包括具有 XHR2 和 IFrame 回退的文件。 该插件支持: 使用 FormData 上传 XMLHttpRequest2 文件 IFrame 回退 事件回调(beforesend、progress、load、error) 中止和超时 ...
封装 JavaWeb 常见功能:文件上传、角色授权、Redis控制台、API日志统计、跨域处理 等等。内置代码生成器,一键生成:普通input、多行文本域、富文本编辑器、日期控件、图片上传、音频上传、视频上传、 多图上传、树...
update:文件通用选择,支持跨域,允许第三方调用;部分服务器获取当前url异常情况兼容处理;tar解压,文件名过长兼容处理(路径大于100字符处理);图片预览大图处理;生成多级缩略图;权限组开启了文件下载权限,对应...
iframe自适应,同域和跨域下实现 无刷新文件上传(fileupload) 利用Express4.12.1框架 + multiparty工具包实现了Node下的文件无刷新上传功能 利用iframe实现 利用ajax实现 豆瓣爬虫(crawler-douban) 利用nodejs...
04 Form组件上传文件 05 上传相关内容梳理 06 Model操作知识提问 07 Model操作概述 08 Model字段 09 Model连表字段参数详解 10 Model自定义多对多第三张表 11 强插一道面试题 12 Model连表操作梳理 13 多对多自关联 ...
5.iframe跨域 6.心跳包 7.ajax上传图片 8.裁切图片 9.js表单验证 10.悬浮层拖拽 11.列表节点拖拽排序 12.列表节点拖拽移动 13.Fixed 效果(固定居上/中/下、左/中/右),兼容 IE6 14.base64 编码 15.网站风格切换 16...
138 客户端与服务端通信-解决跨域问题 139 Redis 为数据添加缓存-Redis HA 简介 140 Redis 为数据添加缓存-Redis Sentinel 高可用集群部署 141 Redis 为数据添加缓存-Redis 客户端的使用 142 Redis 为数据添加缓存-...
138 客户端与服务端通信-解决跨域问题 139 Redis 为数据添加缓存-Redis HA 简介 140 Redis 为数据添加缓存-Redis Sentinel 高可用集群部署 141 Redis 为数据添加缓存-Redis 客户端的使用 142 Redis 为数据添加...
Django获取多个数据以及文件上传 Django的CBV和FBV Django模板语言循环字典 Django基于正则表达式的URL Django对应的路由名称 Django路由分发 DjangoORM基本创建基本类型以及生成数据库结构 DjangoORM使用mysql注意 ...
感谢 湖南妈妈网 协助测试 修正 辩论在修改时会丢失正反方票数的问题,感谢 许昌论坛 协助测试 修正 表单中文件上传选项的验证无效的问题,以及非必填项验证问题,感谢 大舟山 和 得意生活 协助测试 修正 "轮换广告...