怎样解决乱码 ajax

zhangjpb 2008-01-08 09:15:24
<script language="javascript">
var xmlhttp;
xmlhttp = new ActiveXObject("Microsoft.XMLHTTP");
xmlhttp.open("get","test.xml");
xmlhttp.setRequestHeader("Content-Type","text/xml");
xmlhttp.onreadystatechange=function()
{
if(xmlhttp.readystate==4)
{
if(xmlhttp.status==200)
{
var xmlobj=xmlhttp.responseText;
//alert(xmlobj);
document.getElementById("xml").value = xmlobj;
}
else
{
alert("sdf");
}
}
}
xmlhttp.send(null);
</script>


我用Ajax把test.xml中的内容提取到我的本地,但是问什么返回的内容中,中文显示不出来,返回的是乱码。大家给解决一下吧。
...全文
176 14 打赏 收藏 转发到动态 举报
写回复
用AI写文章
14 条回复
切换为时间正序
请发表友善的回复…
发表回复
sonce8 2008-01-08
  • 打赏
  • 举报
回复
你把XML文件的编码改为UTF-8。
sonce8 2008-01-08
  • 打赏
  • 举报
回复
编码问题。改为UTF-8
zhangjpb 2008-01-08
  • 打赏
  • 举报
回复
楼上说的不管用,其实返回内容我已经解决了,但是返回的代码中就是没有编码那个属性。
Go 旅城通票 2008-01-08
  • 打赏
  • 举报
回复
xmlhttp.setRequestHeader("Content-Type","text/xml;charset=utf-8");
zhangjpb 2008-01-08
  • 打赏
  • 举报
回复
我把var xmlobj=xmlhttp.responseText; 改成了 var xmlobj=xmlhttp.responseXml.xml;能返回了,但是又有了新问题了。
远端的xml文件 是:
<?xml version="1.0" encoding="gb2312"?>
但是返回的确实
<?xml version="1.0"?>
没有编码那个属性了,奇怪???

zhangjpb 2008-01-08
  • 打赏
  • 举报
回复
这是我的代码:大家看一下
<script language="javascript" type="text/javascript">
var xmlhttp;
xmlhttp = new ActiveXObject("Microsoft.XMLHTTP");
xmlhttp.open("get","d.xml");
xmlhttp.setRequestHeader("Content-Type","text/xml;charset=gb2312");
xmlhttp.onreadystatechange=function()
{
if(xmlhttp.readystate==4)
{

if(xmlhttp.status==200)
{
var xmlobj=xmlhttp.responseText;
document.getElementById("xml").value = xmlobj;
}
else
{
alert("sdf");
}
}
}
xmlhttp.send(null);
</script>
jetxia 2008-01-08
  • 打赏
  • 举报
回复
解决了吗?
qq22345111 2008-01-08
  • 打赏
  • 举报
回复
楼上正解
zhangjpb 2008-01-08
  • 打赏
  • 举报
回复
楼上说的不行呀!
zhulei2008 2008-01-08
  • 打赏
  • 举报
回复


if(xmlhttp.readystate==4)
{
this.xmlhttp.setRequestHeader('Content-Type', 'application/x-www-form-urlencoded');
}
zhangjpb 2008-01-08
  • 打赏
  • 举报
回复
用什么编码呀
<?xml version="1.0" encoding="utf-8"?>
zhangjjhua 2008-01-08
  • 打赏
  • 举报
回复
我直接返回xml里的内容时,没有乱码啊....再检查下你的编码...
zhangjpb 2008-01-08
  • 打赏
  • 举报
回复
那个xml文件在别的服务器上,我只能用ajax把xml文件的内容返回到我的本地,然后我再保存成xml文件进行分析,但是如果那个xml文件中有中文的话,我返回的中文内容就是乱码。英文的没有问题。
Go 旅城通票 2008-01-08
  • 打赏
  • 举报
回复
检查使用这段js页面的编码和你的xml声明中的编码是否一致

还有你点就是既然是取xml文件,你最好分析xml取内容(responseXML)


if(xmlhttp.readystate==4)

==>
if(xmlhttp.readyState==4)

62,046

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术交流专区
javascript云原生 企业社区
社区管理员
  • ASP.NET
  • .Net开发者社区
  • R小R
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

.NET 社区是一个围绕开源 .NET 的开放、热情、创新、包容的技术社区。社区致力于为广大 .NET 爱好者提供一个良好的知识共享、协同互助的 .NET 技术交流环境。我们尊重不同意见,支持健康理性的辩论和互动,反对歧视和攻击。

希望和大家一起共同营造一个活跃、友好的社区氛围。

试试用AI创作助手写篇文章吧