AJAX 获取数据乱码,只想知道原因何在??
Index.aspx 页面
<html xmlns="http://www.w3.org/1999/xhtml" >
<head runat="server">
<title>无标题页</title>
<script language="javascript" type="text/javascript">
//
var xmlhttp;
function Button1_onclick()
{
xmlhttp = new ActiveXObject("Microsoft.XMLHTTP");
xmlhttp.open("GET","http://localhost/WebApplication1/Index2.aspx",true);
xmlhttp.onreadystatechange = stateChange;
xmlhttp.send(null);
}
function stateChange()
{
if(xmlhttp.readystate==4 && xmlhttp.status==200)
{
var data = xmlhttp.responseBody;
document.getElementById("divMy").innerHTML = data;
}
}
// ]]>
</script>
</head>
<body>
<form id="form1" runat="server">
<div id="divMy">
</div>
<div>
<input type="button" value="点击获取数据" id="Button1" onclick="return Button1_onclick()" /></div>
</form>
</body>
</html>
Index2.aspx 页面
protected void Page_Load(object sender, EventArgs e)
{
Response.Write("你好于娜");
Response.End();
}
----------------------
为什么AJAX获取的数据是乱码? 原因何在? 两张页面都是UTF-8编码格式输出的,为什么还有错???
--------------------编程问答-------------------- 你页面的编码是utf-8可发送编码是gb2312样,一句话发送编码与你的页面编码不一侄 --------------------编程问答-------------------- 绝对一致。
之所以错,是因为 responseBody 是流对象,不能直接写,需要转换 --------------------编程问答-------------------- <meta http-equiv="Content-Type" content="text/html; charset=utf-8"> --------------------编程问答-------------------- String 变量 = new String(request.getParameter("变量").getBytes("ISO-8859-1"),"UTF8");
System.out.println(变量);
--------------------编程问答-------------------- <globalization requestEncoding="gb2312" responseEncoding="gb2312"/>
把上面这句家到web.config里就行了 --------------------编程问答-------------------- 为什么不用responseText呢 --------------------编程问答-------------------- 今天起来又见此贴,问题还没有解决吗?
补充:.NET技术 , ASP.NET