我有一个jsp,它接受来自用户的输入和一个servlet来处理提交的数据。我正在使用Ajax请求来调用servlet并将参数与它一起传递。
这是我的jsp代码:
<%@ page language="java" import="java.util.*,com.*,bo.*" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8"%>
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>Insert title here</title>
<script type="text/javascript">
function check(){
var i = document.getElementById('input').value;
var escapedi = escape(i);
escapedi = escapedi.replace("%u2019","%27");
var xhr = new XMLHttpRequest();
xhr.open("GET","LinkHandler?text="+ escapedi,true);
xhr.send();
}
</script>
</head>
<body>
<input type="text" id="input"/><input type="button" onclick="check()" value="Submit"/>
</body>
</html>
这是我的Servlet代码:
protected void doGet(HttpServletRequest req, HttpServletResponse resp)
throws ServletException, IOException {
String text = URLDecoder.decode(req.getParameter("text"),"UTF-8");
System.out.println(text);
}
代码在普通的Web项目上运行良好,但是当我在Google Web App Project上运行时,一些特殊字符如英镑显示为“?”。
我该如何解决这个问题?请帮帮我!
答案 0 :(得分:0)