AJAX中文乱码问题解决方案
2012-08-14 18:03
429 查看
当使用response.write返回JSON数据到前端时,需要在前面加上这句 response.ContentType = "text/html;charset=gb2312";
完整的代码
前端:
<script type="text/javascript">
$(document).ready(function(){
AjaxHKmoHotel();
});
function AjaxHKmoHotel()
{
$.ajax({
type: "POST",
url: "HotelMessage.asmx/GetHotelInfoByPage",
data:{page:1},
dataType: "json",
success: function (data) {
alert(data.result.hotel[0].address);
},
error: function (XMLHttpRequest, textStatus, errorThrown) {
alert("调用出错" + errorThrown);
},
complete: function(XMLHttpRequest, textStatus) {
// 调用本次AJAX请求时传递的options参数
}
});
}
</script>
后台webservices
[WebMethod]
public void GetHotelInfoByPage(int page)
{
string ResponseStr = "";
string url = "http://www.qmango.com/interface/comm/get_hotel_info.asp?page="+page.ToString();
HttpWebRequest req = (HttpWebRequest)WebRequest.Create(url);
WebResponse res = req.GetResponse();
Stream ReceiveStream = res.GetResponseStream();
StreamReader SR = new StreamReader(ReceiveStream, System.Text.Encoding.Default);
ResponseStr = SR.ReadToEnd();
ResponseStr = XmlToJson.XmlToJSON(ResponseStr);
HttpResponse response = HttpContext.Current.Response;
response.ContentType = "text/html;charset=gb2312";
response.Write(ResponseStr);
}
完整的代码
前端:
<script type="text/javascript">
$(document).ready(function(){
AjaxHKmoHotel();
});
function AjaxHKmoHotel()
{
$.ajax({
type: "POST",
url: "HotelMessage.asmx/GetHotelInfoByPage",
data:{page:1},
dataType: "json",
success: function (data) {
alert(data.result.hotel[0].address);
},
error: function (XMLHttpRequest, textStatus, errorThrown) {
alert("调用出错" + errorThrown);
},
complete: function(XMLHttpRequest, textStatus) {
// 调用本次AJAX请求时传递的options参数
}
});
}
</script>
后台webservices
[WebMethod]
public void GetHotelInfoByPage(int page)
{
string ResponseStr = "";
string url = "http://www.qmango.com/interface/comm/get_hotel_info.asp?page="+page.ToString();
HttpWebRequest req = (HttpWebRequest)WebRequest.Create(url);
WebResponse res = req.GetResponse();
Stream ReceiveStream = res.GetResponseStream();
StreamReader SR = new StreamReader(ReceiveStream, System.Text.Encoding.Default);
ResponseStr = SR.ReadToEnd();
ResponseStr = XmlToJson.XmlToJSON(ResponseStr);
HttpResponse response = HttpContext.Current.Response;
response.ContentType = "text/html;charset=gb2312";
response.Write(ResponseStr);
}
相关文章推荐
- ajax中文乱码问题解决方案
- ajax获取数据中文乱码问题最简单的完美解决方案
- extjs及ajax中文乱码问题及解决方案(基本通用)
- jquery1.4.2 ajax 中文乱码问题解决方案
- Ajax中的中文乱码问题的解决方案
- ajax中文乱码问题解决方案
- Ajax中的中文乱码问题的解决方案
- jquery+jsp+servlet做$.ajax交互时出现中文乱码(字符集问题)的解决方案
- Ajax中文乱码问题解决方案
- SpringMVC Ajax请求时返回json中文字符串的乱码问题的解决方案
- ajax中文乱码问题解决方案
- ajax获取数据中文乱码问题最简单的完美解决方案
- Ajax Post请求中文乱码问题解决方案
- ajax 文本框输入提示中文乱码问题解决方案
- jQuery-Ajax提交数据中文乱码问题的解决方案
- Ajax中文乱码问题解决方案(servlet)
- ajaxpro中文乱码问题解决方案
- Ajax中文乱码问题解决方案(servlet)
- Ajax中文乱码问题解决方案
- 关于Ajax请求中传输中文乱码问题的解决方案