ueditor 1.4.3 gbk asp 上传中文乱码 终极解决方法 ie6 ie8 也适用
[摘要:百度编纂器1.43 gbk asp 题目 1.firefox3.0下 单图上传 面没有了 面多图上传 中央的蓝色按钮(即 面击挑选图片)没有表现(附件上传出那个题目) 没有晓得我的水狐吃翔了 致使上面测试只要 谷歌]
百度编辑器1.43 gbk asp 问题
1.firefox3.0下
单图上传 点不了
点多图上传 中间的蓝色按钮(即 点击选择图片)不显示(附件上传没这个问题)
不知道我的火狐吃翔了 导致下面测试只有 谷歌 360 ie8 ie6
2. 默认情况下 (就是什么设置都没动 直接在iis跑)
1)在 谷歌 360极速模式 功能:多图 附件 (单图上传反而没问题)
出现 部分中文(文件名)乱码 导致有时上传不了
例如 稿.gif
2)ie8 ie6下 功能:单图 多图 附件
中文 文件名的 直接都传不了
没办法自己找原因 网上大神都很忙 没人理会我们还在使用asp的菜鸟屌丝
=================================================================================================
分析了一下 :
后台asp 看了下 都是gbk应该没什么问题 直接把2进制那边直接显示就是乱码 所以应该是前台的问题
单图上传 是 multipart/form-data iframe
多图 附件上传 好像是用的 支持html5的浏览器 ( XMLHttpRequest+FormData+等等)否则就是 flash
====================================================================================================================
先处理谷歌 360的问题 因为方便调试 (对于flash上传为啥会“部分”中文出错,能力有限没明白希望知道的留言告知)
解决: 我想到是在给flash之前 就把文件名 给编码 然后在对返回的json里的文件名解码
1)编码
找啊找啊 找到了 third-party/webuploader/webuploader.js
行2234 this.name = escape(source.name)
由于编辑器加载的是webuploader.min.js
所以要这里 搜索 this.name=a.name||"Untitled" 改成this.name=escape(a.name)||"Untitled"
2)解码
dialogs/image/image.js 多图
行778 title: unescape(data.title),
行779 alt: unescape(data.original),
dialogs/attachment/attachment.js 附件
行558 title: unescape(data.original) || link.substr(link.lastIndexOf('/') + 1),
行742 var title = unescape(lis[i].getAttribute('data-title')) || url.substr(url.lastIndexOf('/') + 1);
务必清除历史记录后测试
到这里 ie6 8的多图 附件上传也一样都可以了
===============================================================================================
针对360 极速模式(6.3) 上面修改并不能有效 狗日的360上传始终是utf-8 而且好像不让修改filename 倒置这个还是乱码 谷歌就没这个问题蛋疼
解决:我是在后端做文章Uploader.Class.asp 95行下面加
Dim otherfilename
otherfilename = rsFormValues.Item( "name" )
if otherfilename<>"" then filename=otherfilename
这么改的目的是 多图 附件 前端上传的时候 附带一个额外的name字段 储存的就是文件名 这里编码过的 所以用他代替吧 因为单图上传没这个所以判断下不等于空
=====================================================================================================
ie6 ie8 单图上传 中文乱码解决
iframe这种玩意 在ie解析默认什么编码?反正不会继承父级的gbk 这是倒置乱码的关键
然后我找到了单图上传的js代码
行24405 ueditor.all.js 这里是单图上传的开始 读了代码
点击单图上传 构造里了一个iframe 里面有
1)form multipart/form-data input file
2)又一个 iframe 行24432
我开始尝试了各种方法
在form做文章 不行
然后又在iframe里 head之间加<meta http-equiv="Content-Type" content="text/html;charset=gbk"/> 还是不行
知道肯定是这的问题 所有都集中在 主iframe上 一直忽略了 行24432 的iframe
也同样用js在其 head之间加<meta http-equiv="Content-Type" content="text/html;charset=gbk"/> 还是不行
找啊找啊找啊 谷歌被屏蔽后 一直在用百度 想死的心都有
解决:最终认为是两个iframe ie下都必须指定编码
所以分别在 两个iframe上用上了document.charset="gbk"
行24423 ueditor.all.js 下面加一句
btnIframeDoc.charset="gbk";
行24449 ueditor.all.js var iframe = btnIframeDoc.getElementById('edui_iframe_' + timestrap);
下面加
var iframedoc = (iframe.contentDocument || iframe.contentWindow.document);
iframedoc.charset="gbk";
由于编辑器最终用的是ueditor.all.min.js
搜索 n=g.contentDocument||g.contentWindow.document; 在其后面加
n.charset="gbk";
搜索 r=n.getElementById("edui_iframe_"+a) 在其后面和分号之间加(有个逗号)
,iframedoc=(r.contentDocument||r.contentWindow.document);iframedoc.charset="gbk"
================================================================================================
另外如果这个用在虚拟空间上 Uploader.Class.asp 211行 改成这样 On Error Resume Next:fs.CreateFolder( path )
此文献给和我一样的菜鸟们 百度编辑器的大神 你们为何让我们很受伤
ueditor 1.4.3 gbk asp 上传中文乱码 终极解决方法 ie6 ie8 也适用的更多相关文章
- Android 关于HttpClient上传中文乱码的解决办法
使用过HttpClient的人都知道可以通过addTextBody方法来添加要上传的文本信息,但是,如果要上传中文的话,或还有中文名称的文件会出现乱码的问题,解决办法其实很简单: 第一步:设置Mult ...
- 关于HttpClient上传中文乱码的解决办法
使用过HttpClient的人都知道可以通过addTextBody方法来添加要上传的文本信息,但是,如果要上传中文的话,或还有中文名称的文件会出现乱码的问题,解决办法其实很简单: 第一步:设置Mult ...
- .net 地址栏传中文乱码 的解决方法
1.设置web.config文件. <system.web> ...... <globalization requestEncoding="gb2312" res ...
- Unable to find ‘struts.multipart.saveDir’ Struts2上传文件错误的解决方法
Unable to find ‘struts.multipart.saveDir’ Struts2上传文件错误的解决方法 在使用struts2的项目中上传文件的时候出现了一个这样的错误: 2011-7 ...
- 【转】Windows2008上传大文件的解决方法(iis7解决上传大容量文件)
2008上传大文件的解决方法:http://wenku.it168.com/d_000091739.shtml 2003上传大文件的解决方法:http://tech.v01.cn/windowsxit ...
- 使用Xshell的rz命令上传文件失败的解决方法
使用Xshell的rz命令上传文件失败的解决方法 第一种:在home目录下rz上传文件失败,如下: 原因:当前用户不具备权限解决:用 sudo rz 上传即可成功 第二种:对于文件大的rz上传失败的话 ...
- 修改bigbluebutton白板上传中文乱码
中文命名的文档,上传是乱码 -- 显示的 打开后, 中文部分是乱码 Comment 1 by project member ffdixon, Nov 08, 2010 Translatio ...
- Asp.net导出Excel乱码的解决方法
通过跟踪Asp.net服务器代码,没有乱码,然而导出Excel到浏览器后,打开时出现乱码. 解决方法是添加编码格式的前缀字节码:Response.BinaryWrite(System.Text.Enc ...
- 关于ueditor 在struts2 中 上传图片 ,未找到上传文件 问题的解决方法
问题原因: ueditor 上传图片需请求imageUp.jsp文件,struts2 自带的拦截器(/*)把所有请求的文件都做了处理,所以导致无法上传图片. 解决方法: 方法一:自定义拦截器,让它在请 ...
随机推荐
- AJAX跨域调用ASP.NET MVC或者WebAPI服务的解决方案
问题描述 当跨域(cross domain)调用ASP.NET MVC或者ASP.NET Web API编写的服务时,会发生无法访问的情况. 重现方式 使用模板创建一个最简单的ASP.NET Web ...
- 21-Python-Django进阶补充篇
1. 路由部分补充 1.1 默认值 url: url(r'^index/', views.index, {'name': 'root'}), views: def index(request,name ...
- ActiveMQ笔记(3):基于Networks of Brokers的HA方案
上一篇介绍了基于ZK的ActiveMQ HA方案,虽然理解起来比较容易,但是有二个不足: 1) 占用的节点数过多,1个zk集群至少3个节点,1个activemq集群也至少得3个节点,但其实正常运行时 ...
- 【swift学习笔记】五.使用枚举优雅的管理Segue
在做页面转跳的时候,我们要给Segue命名,如果Segue多了,管理他们就是一个恶梦.我们可以枚举更优雅的管理这些Segue. 1.我们先来建立一个protocol,他的功能就是让实现类实现一个Seg ...
- C#中两个Form窗口之间的传值(父->子)(子->父)
//首先定义两个Form,一个为Form1,一个为Form2,其中Form1作为父窗口,Form2作为子窗口 //1.父窗口传值给子窗口 //Form1中代码: public Form1() { In ...
- 基于bootstrap样式的tree,
<!doctype html><html lang="zh"><head> <meta charset="UTF-8" ...
- Appium环境搭建+cordova
1.安装JDK 配置JAVA_HOME(变量值为jdk的安装目录)以及Path path值如下: 验证是否生效 2.安装node.js 选择适合自己的版本官网直接下载https://nodejs.or ...
- ORacle修改表列长度
alter table 表名 modify column_name varchar2(32) alter table 表名 modify (column_name1 varchar(20) defau ...
- jquery和zepto的扩展方法extend
jquery和zepto的扩展方法extend 总结下jQuery(3.1.1)和zepto(1.1.6)到底是如何来开放接口,使之可以进行扩展,两者都会有类型判断,本文使用简单的类型判断,暂不考虑兼 ...
- SSH项目里面 忘记密码的邮件发送功能
package com.xxx.util; import java.util.Date; import java.util.Properties; import javax.mail.Address; ...