前台用gb2312 ,后台是asp+gb2312
解决的办法很简单,
1.前台在提交的时候用escape编码一下
$.get("k_win_tj.asp", {language:syslanguage,use:use.value,kid:kid.value,txts:escape(txts.value),d:new Date()}, function(s){ if(s.indexOf('e0909o') > -1) alert(error1); }); txtx.value='';}
2.后台接收的时候再解码,asp解码函数如下
Function VbsUnEscape(str) Dim x x=InStr(str,"%") Do While x>0 VbsUnEscape=VbsUnEscape&Mid(str,1,x-1) If LCase(Mid(str,x+1,1))="u" Then VbsUnEscape=VbsUnEscape&ChrW(CLng("&H"&Mid(str,x+2,4))) str=Mid(str,x+6) Else VbsUnEscape=VbsUnEscape&Chr(CLng("&H"&Mid(str,x+1,2))) str=Mid(str,x+3) End If x=InStr(str,"%") Loop VbsUnEscape=VbsUnEscape&strEnd Function
texts=request.querystring("txts")texts=VbsUnEscape(texts)