在ajax实现google suggest的过程中,经常会遇到在前台输入中文,在后台要接受并进入数据库检索和把检索出来的中文显示的前台的操作。实现这样的操作经常就要用的转码的过程。
具体过程如下:
1,前台输入中文,通过GET方式传给后台。将中文转成UTF-8编码。这个过程可以使用javascript的函数escape(),但是需要注意的事这时候需要用两次escape(),否则后台接受不到。例如:escape(escape(this.fld.value));
2,后台通过request.getParameter(“”)接收到了前台传入的值,将他再转为中文。可以下载一个转码的类,并使用这个类中的unescape()方法即可。例如:String keyword = Escape.unescape(request.getParameter("keyword"));
3,通过后台操作,再将取得的中文传入前台。再用Escape.java的escape()方法将中文转成UTF-8编码。例如:Escape.escape(key[i]);
4,最后就是前台的解码了,还是使用javascript的函数unescape()。例如:unescapev(notes[i]);