可以看看服务端是直接输出的字符,还是输出的Json。
如果输出的json,客户端用console.log输出看到的是ok,firebug之类的工具看到也是ok,
但是用代码:
var jmz = {};
jmz.GetLength = function(str) {
return str.replace(/[\u0391-\uFFE5]/g,"aa").length; //先把中文替换成两个字节的英文,在计算长度
};
alert(jmz.GetLength('ok'));
//data是ajax返回的,ajax的数据类型是html
alert(jmz.GetLength(data));
修复问题就是,如果服务端直接输出的字符,ajax的数据类型设置为Html,如果服务端是输出的Json,ajax的数据类型设置为json.