使用ajax时UTF8编码无法正常工作
发布时间:2020-12-16 01:37:31 所属栏目:百科 来源:网络整理
导读:我最近改变了一些我的页面通过ajax显示,我有一些混乱,为什么utf8编码现在在一个盒子里面显示一个问号,而在它之前没有. 例如. oringal页面是index.php. charset明确设置为utf8,位于 head中.然后我用php来查询数据库 Heres是原始的index.php页面: !DOCTYPE HT
我最近改变了一些我的页面通过ajax显示,我有一些混乱,为什么utf8编码现在在一个盒子里面显示一个问号,而在它之前没有.
例如. oringal页面是index.php. charset明确设置为utf8,位于< head>中.然后我用php来查询数据库 Heres是原始的index.php页面: <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd"> <html lang="en"> <head> <meta http-equiv="content-type" content="text/html; charset=UTF-8"> <title>Title here</title> </head> <body class='body_bgcolor' > <div id="main_container"> <?php Data displayed via php was simply a select statement that output the HTML. ?> </div> 但是,当我进行更改以添加通过ajax填充“main_container”的菜单时,所有utf8编码都停止工作.这是新代码: <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd"> <html lang="en"> <head> <meta http-equiv="content-type" content="text/html; charset=UTF-8"> <title>Title here</title> </head> <body class='body_bgcolor' > <a href="#" onclick="display_html('about_us');"> About Us </a> <div id="main_container"></div> “display_html()”函数调用javascript页面,该页面使用jquery ajax调用来检索存储在php页面中的html,然后将html放在div中,其id为“main_container”.我将jquery中的charset设置为utf8,如: $.ajax({ async: false,type: "GET",url: url,contentType: "charset=utf-8",success: function(data) { $("#main_container").html(data); } }); 我究竟做错了什么?
编码不仅仅是指定元标记和内容类型 – 文件本身必须真正采用您指定的编码,否则您将获得
mojibake.
检查所有内容是否都使用UTF-8,数据库,数据库连接,表列.检查您所包含的任何静态文件是否也以UTF-8编码. (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |