javascript

位置:IT落伍者 >> javascript >> 浏览文章

Jsp环境下的AJAX乱码问题


发布日期:2021年01月14日
 
Jsp环境下的AJAX乱码问题

AJAX传递中文字符串时必须把中文字符串编码成unicode一般会用到JS的自带函数escape()不过找到了更好的函数来确决中文字符转换成unicode编码的函数

function uniencode(text)

{

text = escape(texttoString())replace(/\+/g %B

var matches = textmatch(/(%([AF]{}))/gi)

if (matches)

{

for (var matchid = ; matchid < matcheslength; matchid++)

{

var code = matches[matchid]substring(

if (parseInt(code ) >=

{

text = textreplace(matches[matchid] %u + code)

}

}

}

text = textreplace(% %u

return text;

}

当然服务器端要对编码过的字符串进行第二次转码把字符串转换成UTF编码

function convert_int_to_utf($intval)

{

$intvalintval = intval($intval)

switch ($intval)

{

// byte bits

case :

return chr(

case ($intval & xF)

return chr($intval)

// bytes bits

case ($intval & xFF)

return chr(xC | (($intval 》 ) & xF))

chr(x | ($intval & xF))

// bytes bits

case ($intval & xFFFF)

return chr(xE | (($intval 》 ) & xF))

chr(x | (($intval 》 ) & xF))

chr (x | ($intval & xF))

// bytes bits

case ($intval & xFFFFF)

return chr(xF | ($intval 》 ))

chr(x | (($intval 》 ) & xF))

chr(x | (($intval 》 ) & xF))

chr(x | ($intval & xF))

}

}

这样中文字符串就可以转换成UTF编码这种方法适合各种服务器环境

               

上一篇:JSF请求处理过程(二) 请求处理过程总览

下一篇:javascript keyCode