extjs树,从后盾取到数据,因为有中文,所以先在后编码,到前台解码,但是到前台在哪写解码
extjs树,从后台取到数据,因为有中文,所以先在后编码,到前台解码,但是到前台在哪写解码
extjs树,从后台取到数据,因为有中文,所以先在后编码,到前台解码,但是到前台在哪写解码,因为是用extjs中的treepanel,我的代码是
var left = new Ext.tree.TreePanel({
title:"Navigation",
region:"west",
collapsible:true,
width:200,
autoScroll:true,
//store:treestore,
split:true,
root: new Ext.tree.AsyncTreeNode({
text:'ExtJs',
id:'0',
expanded:true
}),
loader:new Ext.tree.TreeLoader({
dataUrl : 'getMenu.action',
success:function(response,option,success){
var treet = response.responseText;
alert(treet);
}
}),
listeners: {
click: function(node) {
//得到node的text属性
Ext.Msg.alert('消息', '你点击了: "' + node.attributes.text+"'");
}
}
});
在哪写解码的代码啊,我以为在success,但是不是啊,哪位大神知道啊
------解决思路----------------------
哪个告诉你有中文要编码的?
前、后台还有数据库统一编码就行了
如果非要编码,那我只能帮顶了,不好意思的说,从没有用过ext
------解决思路----------------------
------解决思路----------------------
success
------解决思路----------------------
我的想法是手动加载
var data = Ext.decode(response.responseText).data;
for (...) {
var child = node.createNode(...);
node.appendChild(child);
}
------解决思路----------------------
服务端程序发一个字符集声明的头就可以了
------解决思路----------------------
楼主前台的html页头声明是utf-8吗?后台呢?前后台编码要一致,数据库用的是什么呢?mysql默认是latin1,我是在配置文件里手动改成了utf-8,在后台有这么一句话:response.setContentType("text/html;charset=utf-8");
------解决思路----------------------
在服务器的返回response中设置字符集就可以了!!! 完全不用前台再转码!
------解决思路----------------------
我是用的asp语言写的服务器端程序,这样实现的
<%@codepage="65001"%>
<%Session.CodePage=65001%>
response.charset = "utf-8"
------解决思路----------------------
接收服务器端防止乱码的最好的方式就是将内容都转为16进制编码,如
extjs树,从后台取到数据,因为有中文,所以先在后编码,到前台解码,但是到前台在哪写解码,因为是用extjs中的treepanel,我的代码是
var left = new Ext.tree.TreePanel({
title:"Navigation",
region:"west",
collapsible:true,
width:200,
autoScroll:true,
//store:treestore,
split:true,
root: new Ext.tree.AsyncTreeNode({
text:'ExtJs',
id:'0',
expanded:true
}),
loader:new Ext.tree.TreeLoader({
dataUrl : 'getMenu.action',
success:function(response,option,success){
var treet = response.responseText;
alert(treet);
}
}),
listeners: {
click: function(node) {
//得到node的text属性
Ext.Msg.alert('消息', '你点击了: "' + node.attributes.text+"'");
}
}
});
在哪写解码的代码啊,我以为在success,但是不是啊,哪位大神知道啊
------解决思路----------------------
哪个告诉你有中文要编码的?
前、后台还有数据库统一编码就行了
如果非要编码,那我只能帮顶了,不好意思的说,从没有用过ext
------解决思路----------------------
Ext.decode(response.responseText)
------解决思路----------------------
success
------解决思路----------------------
我的想法是手动加载
var data = Ext.decode(response.responseText).data;
for (...) {
var child = node.createNode(...);
node.appendChild(child);
}
------解决思路----------------------
服务端程序发一个字符集声明的头就可以了
------解决思路----------------------
楼主前台的html页头声明是utf-8吗?后台呢?前后台编码要一致,数据库用的是什么呢?mysql默认是latin1,我是在配置文件里手动改成了utf-8,在后台有这么一句话:response.setContentType("text/html;charset=utf-8");
------解决思路----------------------
在服务器的返回response中设置字符集就可以了!!! 完全不用前台再转码!
------解决思路----------------------
我是用的asp语言写的服务器端程序,这样实现的
<%@codepage="65001"%>
<%Session.CodePage=65001%>
response.charset = "utf-8"
------解决思路----------------------
接收服务器端防止乱码的最好的方式就是将内容都转为16进制编码,如
var s="\x63\x6f\x64\x69\x6e\x67\x31\x32\x33\x2e\x6e\x65\x74\x31\x36\u8fdb\u5236\u7f16\u7801";
alert(s)