我目前有 2 个不同的 jsp 页面,它们都调用 java 应用程序。目前只有其中一个字符编码效果很好。
页面 A 可以:
$.ajax({
url: _root + myPage,
data: myData,
success: mySuccessHandler,
error: myErrorHandler});
B页做:
$.post(_root + page, data, successHandler).error(errorHandler);
在我使用此代码的 java 应用程序中,有 2 个单独的函数,但唯一的区别是参数名称 A 使用“answerdata”,B 使用“data”:
request.setCharacterEncoding("UTF-8");
JSONObject data = new JSONObject(URLDecoder.decode(request.getParameter("answerdata"), "UTF-8"));
两个 jsp 页面都将数据封装在一个表单中:
<form id="answerdata" accept-charset="UTF-8" onsubmit="return false;">
两者也有这个:
<%@ page contentType="text/html;charset=UTF-8" language="java" %>
只有页面 A,它不起作用,但删除它没有任何效果:
<meta http-equiv="Content-Type" content="text/html;charset=UTF-8"/>
我已经浏览了一些关于stackoverflow的页面,但到目前为止,唯一适用于我的一个页面的答案是
request.setCharacterEncoding("UTF-8")
但这仅适用于页面 B