【发布时间】:2017-09-11 08:25:50
【问题描述】:
我已经在我的 ajax 调用中尝试了以下行,因为它在整个互联网上都被建议:
contentType: "application/json; charset=ISO-8859-1"
但它并没有改变任何东西。每当我使用带有重音符号的字符串参数(例如 società)从 ajax 进行调用时,在我的控制器(我使用的是 Java,spring 框架),我将其接收为 Società强>。我已经尝试了第一个 UTF-8,这是默认的(据我所知),但没有。这是我的全部功能:
function foo(customer, society) {
$.ajax({
url: 'notMappedAcoStaffing.do',
type: "GET",
contentType: "application/json; charset=ISO-8859-1",
data: { customer: customer, society: society},
success: function(data) { $('#content').html(data); },
error: function(error) { alert("error" + error); }
});
}
我将后端的值作为
@RequestMapping(method = RequestMethod.GET)
public ModelAndView fooController(@RequestParam("customer") final String customerParam, @RequestParam(value="society",required=false) Integer societyParam) {...}
有没有办法解决这个问题? 提前感谢您的帮助。
更新:我仍然不知道为什么我在控制器上收到它作为参数失真。但是,当我将其转换如下:How do I convert between ISO-8859-1 and UTF-8 in Java? 时,一切都很好。看到它有效,我再次尝试在我的 ajax 调用中设置 UTF-8,但没有成功......它解决了我的问题,但老实说我不喜欢这种方式。如果您在 ajax 调用方面有更好的解决方案,请与我分享。谢谢
【问题讨论】:
-
欢迎来到 Stack Overflow!请拿起tour,环顾四周,并通读help center,尤其是How do I ask a good question? 和What topics can I ask about here?。从第二个链接:“要求家庭作业帮助的问题必须包括您迄今为止为解决问题所做的工作的摘要,以及您在解决问题时遇到的困难的描述。”即使没有作业。
标签: java jquery ajax spring-mvc