我有一个字符串,我正在尝试发送到我的服务器代码。我在数据中获得了很多这些字符 - �
。我需要序列化数据还是什么?我正在使用utf-8编码,但这并没有解决它。我认为我在JQuery方面的数据发生了一些变化。我该如何解决这个问题?
这是我的JQ的样子。
var id = $('#id').val();
var dataString = 'id='+ id;
$.ajax({
type: "POST",
url: "http...",
data: dataString,
dataType: 'json',
success: function(data) {
...
以下是一个示例字符串: `%ca 32d?
此字符串随后变为�32d?
,其中包含UTF-8和Ê32d?
,其中包含iso-8859-1
修改
我注意到这个编码问题只发生在字符串以%ca
开头时。所有其他人似乎都按预期工作。
答案 0 :(得分:0)
%xx是一个编码字符,服务器将为您解码,即使您不想这样做。你应该在发送之前对你的字符串进行url编码,或者用%25替换每个%,这是%的编码等价物。这与\ characters的概念相同。如果在字符串中有\ n,则引擎会将其解释为换行符,即使n是单词的一部分,例如。
希望有所帮助。