情景:

index.html 使用如下代码访问另外一个html片段

1
2
3
4
5
6
7
8
9
10
11
12
13
function rewritedata(id){
    var uu = "/ciweekly/categorydataph/html/ciweeklyph_"+id+".html";
    $.ajax({
    url:uu,
    type:'POST',
    dataType:'text/html' ,
    error:function(){
    },
    success:function(dd){
        $("#ph_dd").html(dd);
    }
    });
}

注意:被访问的html为片段文件 ,里面只有一些数据代码 没有头部没有设置编码

使用ajax在发出请求后,xmlhttp组件在解析返回数据的编码时,是根据 http 响应的头部中是否有页面内容编码声明决定的.

如果返回的 http 头部中包含 charset 的内容编码声明,则按指定的编码读 responseBody,转换后存在 responseText中.
如果返回的 http 头部中没有包含 charset 的内容编码声明,则默认其编码为 utf-8,
所以,如果是gb2312的html页面,在用ajax请求后,读出来肯定是乱的.
原因是因为 html 页面服务端在输出的时候,是不包含 charset 内容编码声明的,所以ajax就会按utf-8
来解码,不乱才怪.

解决办法:在被访问的html片段页面头部放入如下声明:

1
<meta http-equiv="Content-Type" content="text/html; charset=gb2312">

 

jquery ajax返回html乱码解决的更多相关文章

  1. jquery ajax post 中文乱码解决

    jquery ajax post 方式默认传递的是UFT-8字符,即使页面设置了gbk编码也无效.字符传到后台时如果后台设置的gbk或者其他编码,就会出现乱码.解决很容易,将后台页面设置成UTF-8编 ...

  2. jquery ajax返回json数据进行前后台交互实例

    jquery ajax返回json数据进行前后台交互实例 利用jquery中的ajax提交数据然后由网站后台来根据我们提交的数据返回json格式的数据,下面我来演示一个实例. 先我们看演示代码 代码如 ...

  3. jquery ajax 返回值 中文时乱码或变成问号解决方法

    转载自jquery的 ajax返回值为中文时乱码解决方法 用jquery的ajax,遇到个问题,服务器端从数据库取到的数据没有出现中文乱码问题(日志打出来是没有乱码的),但是异步传到客户的时候却出现了 ...

  4. Jquery Ajax 返回数据类型变成document

    下面是我写的一段Jquery Ajax的代码,在chrome下没有问题,在firefox下就算是返回success也提示"系统正忙"; $.ajax({ url: "fa ...

  5. springMvc 中返回字符串 乱码解决

    /** * produces=MediaType.APPLICATION_JSON_VALUE+";charset=utf-8" 乱码解决 * @param callback * ...

  6. firefox下jquery ajax 返回 [object XMLDocument]处理

    在firefox下使用jquery ajax处理 返回json类型的时候,ajax执行成功返回结果为 [object XMLDocument]. 处理办法:在getWriter.write():前面加 ...

  7. Ajax返回中文乱码问题(未解决)

    (未解决) 暂时使用办法:改用返回Map<String,String>形式的返回值,在ajax中获取json形式的数据.

  8. JQuery ajax返回JSON时的处理方式

    最近在使用JQuery的ajax方法时,要求返回的数据为json数据,在处理的过程中遇到下面的几个问题,那就是采用不同的方式来生成json数据的时候,在$.ajax方法中应该是如何来处理的,下面依次来 ...

  9. SpringBoot返回页面乱码解决

    SpringBoot,在做全局异常处理的时候,返回中文字符串时,出现乱码情况,网上查阅资料之后,解决方式如下所示,自定义WebConfiguration继承WebMvcConfigurationSup ...

随机推荐

  1. 【Unity笔记】Behaviour Designer的使用方法

    Tasks列表 -- Composites选项 Sequence:图标是“箭头”,相当于And逻辑.下接多个子任务,它们从左到右依次执行.所有子任务执行成功,则Sequence返回成功:任一子任务执行 ...

  2. Android——适配器其他组件(AutoCompleteTextView:自动完成文本编辑框;Spinner:下拉列表)

    activity_activitywenben.xml <?xml version="1.0" encoding="utf-8"?> <Lin ...

  3. C#操作摄像头 实现拍照功能

    从正式工作以来一直做的都是基于B/S的Web开发,已经很长时间不研究C/S的东西了,但是受朋友的委托,帮他做一下拍照的这么个小功能.其实类似的代码网上有很多,但是真的能够拿来运行的估计也没几个.本来是 ...

  4. NFS服务的端口分配

    常规的一些NFS服务设置我们已经了解了.那么对于端口问题,很多朋友并不是很清楚.这里我们就来详细介绍一下端口的分配.portmapper在NFS服务启动的时候给每一个NFS服务分配了一个动态的端口,如 ...

  5. [Javascript]右侧悬浮框

    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/ ...

  6. Using org.hibernate.id.UUIDHexGenerator which does not generate IETF RFC 4122 compliant UUID values;

    项目部署,启动过程中有以下警告: [WARN]: Using org.hibernate.id.UUIDHexGenerator which does not generate IETF RFC 41 ...

  7. http://www.casualarena.com/

    http://www.casualarena.com/ ———————————————————————————————————————————— 包括祖玛.台球.国际象棋等双人联机小游戏.

  8. sqlserver查询最接近的记录

    select top 1 SEX,ACTIVE ,HEIGHT,WEIGHT,HOT,CARBON,PROTEIN,FAT,sodium from standard where sex='0'and ...

  9. B2B(企业对企业)、B2C(企业对个人)、C2C(个人对个人)

    B2B(企业对企业).B2C(企业对个人).C2C(个人对个人)

  10. [oracle] oracle的三种密码验证机制以及在windows和linux下的不同启动过程

    oracle数据库的密码验证机制: ① 操作系统验证 拥有SYSDBA和SYSOPER的用户用该方式验证此时数据库无需启动,也无需开启监听和实例服务. 要求:本地组ora_dba中有该操作系统的登录用 ...