Javascript 在jquery ajax调用中,其中一个键的值为“quot;”&引用;,jquery将该值转换为jQuery1640426001801476224854_1371690944590
如果我做一个Javascript 在jquery ajax调用中,其中一个键的值为“quot;”&引用;,jquery将该值转换为jQuery1640426001801476224854_1371690944590,javascript,jquery,Javascript,Jquery,如果我做一个 var i = '{"xyz":"??"}' $.ajax({ url: '/someendpoint',type: 'post', dataType: 'json', success: null,error: null,data: i }); 根据firebug的说法,这篇文章是: {"xyz":"jQuery164042601801476224854_1371690944590"} 如果只有一个问号,那么帖子就是 {"xyz":"?"} 正如所料 这可能与post正文
var i = '{"xyz":"??"}'
$.ajax({ url: '/someendpoint',type: 'post', dataType: 'json', success: null,error: null,data: i });
根据firebug的说法,这篇文章是:
{"xyz":"jQuery164042601801476224854_1371690944590"}
如果只有一个问号,那么帖子就是
{"xyz":"?"}
正如所料
这可能与post正文中的转义有关,但需要详细信息
看起来像是jquery错误:发生的事情是jquery将其填充为回调参数。只要在选项中设置
jsonp:false
,就可以避免这种情况发生。这看起来像是jquery中的一个bug:这看起来像是jquery中的一个bug你有没有尝试过其他版本的jquery?只是好奇如果你把String i改为对象会发生什么?i、 变量i={“xyz”:“?”};考虑到jQuery将对其执行$.param,它将不再是JSON。@yalis:您不应该在问题中给出答案(这是一个bug)。相反,在你自己的问题上发表一个答案。@zerkms,我不这么认为。。。至少,我有一个版本的jQuery(不管有没有bug),它总是在URL中填入?
,而不显式启用JSON-P模式。正如其他人所说,这可能是一个bug,但我打赌关闭jsonp可以修复它。这是jQuery旧版本中的一个bug,在最近的版本中已经修复。