假设我的页面是UTF-8编码,并且我的代码调用a.php
,其中a.php
通过ajax(jQuery)$.get
获取,并且调用的文件具有不同的编码,如windows-1255
在头中指定? 幕后发生了什么? 谢谢当AJAX调用不同的编码页面时会发生什么?
3
A
回答
1
好吧,一切都只是字节,直到Web浏览器解释它们并将它们转换为字符呈现给用户。因此,AJAX中发生的事情并不重要,因为无论如何都会存在编码冲突。例如,如果AJAX返回编码为UTF-8的斯堪的纳维亚字符'å',则它将使用两个字节0xc3a5进行编码。现在,如果Web浏览器希望编码为UTF-8,那么它们将呈现为用户的“å”,没有问题。但是,如果Web浏览器期望Latin1,它们本质上将被解释为两个字符,即0xc3和0xa5,它们恰好代表字符Ã¥。
+0
有没有方法可以改变数据从ajax带来的方式? – Jackson 2012-04-28 00:04:17
+0
最好的解决方案是始终使用相同的编码,但是,这并不总是可行的,在这种情况下,您必须知道两端的编码,然后将其转换为另一端。这可能是图书馆,这是我的知识停止的地方。 – LostOblivion 2012-04-28 00:15:28
相关问题
- 1. 当调用ajax调用时会发生什么?
- 2. AJAX:页面重定向后回调响应会发生什么?
- 3. 当我编译时会发生什么?
- 4. 当$ location.path('new/path')下面有代码时会发生什么?
- 5. 当页面嵌套ui时,ajax调用不会reRender:repeat [JSF1.2]
- 6. 当你调用UItableview的重装两次时会发生什么
- 7. 当我调用DLL中的函数时会发生什么
- 8. 当condition_variable :: wait()被调用时,解锁unique_lock会发生什么?
- 9. 当在IEnumerable上调用ToArray()时会发生什么?
- 10. 如果/当DllImport被多次调用时会发生什么?
- 11. 当UISlider值发生变化时会调用什么?
- 12. 当我们调用ServiceWorkerRegistration.pushManager.subscribe()时会发生什么?
- 13. 当某个线程调用Thread.interrupt()时,会发生什么?
- 14. 当调用canvas.drawBitmap时系统会发生什么?
- 15. 当alloc或allocWithZone被调用时会发生什么?
- 16. 当我们调用requestLocationUpdates()时会发生什么?
- 17. 当设备旋转时调用onDestroy会发生什么问题
- 18. 当页面主题发生变化时触发什么事件
- 19. 什么是H.450.2?当它不存在时会发生什么?
- 20. 当我ping 127.0.0.1时会发生什么
- 21. 当redis重载时会发生什么?
- 22. 当crontabs重叠时会发生什么?
- 23. 当AsyncTasks已满时会发生什么?
- 24. PHP和AJAX会话:AJAX页面上的会话变量不同于页面上调用的页面
- 25. 当你同时触摸两个按钮时会发生什么
- 26. 当打开不同的页面时,MVC调用默认页面?
- 27. 当发生超时时,SqlCommand.ExecuteXXX()会返回什么错误号码
- 28. 当我运行下面的命令时会发生什么?
- 29. 当页面加载时,jQuery AJAX不会在Chrome/Chromium中触发
- 30. 当被拒绝的页面(机器人)仍在sitemap.xml中时会发生什么?
很好的问题。我的经验是浏览器无缝地将字符翻译为供内部使用的unicode(因此无论所声明的编码暗示什么字符集,所有文档都可以使用整个Unicode字符集),但我很想看到有人回答这个问题详细。我假设所有的字符都可以映射到unicode字符集,这我不知道。 – goat 2012-04-28 01:45:14
也可能编辑你的问题,以澄清其他页面的声明编码是正确的。 – goat 2012-04-28 01:50:01