大佬教程收集整理的这篇文章主要介绍了jQuery $.get()没有设置标头时的回复字符集?,大佬教程大佬觉得挺不错的,现在分享给大家,也给大家做个参考。
该插件的作用是运行一个Web服务器,为一个html页面提供一些特殊的变量,它取代了请求的实际数据(播放列表,请求队列,歌曲中剩余的时间等).
我认为这是一个有趣而且很好的项目来学习一些jQuery所以我开始连接我自己的js代码来替换,修复和ajaxify服务的网站从插件,但我现在遇到了字符编码的问题.
在页面上,您可以获得播放列表中所有歌曲的链接.当你点击其中一个链接时,我连接了我自己的jQuery点击@L_489_14@.因此,当你请求一首歌时我没有重新加载整个页面,而是执行$.get($(this).attr(‘href’,function(responsE){… code …})然后我使用replaceWith来使用新生成的队列替换当前队列,同时添加您的请求.我做同样的事情来显示/更新当前正在播放和搜索,以便在后台获取所有内容,然后在动画中添加一些动画.
所有的jQuery / Ajax都很棒,但我遇到的最大问题是charset和queue / playlist中的歌曲名称.名称中的特殊字符(åäöé等)根本不起作用.
该插件输出iso-8859-1 / latin1中的所有内容,标记中的Meta标签告诉浏览器该页面为latin1.在浏览器中的正常页面刷新中,这很好用,并且特殊字符显示为正常.但是当我使用jQuery和$.get()来动态替换代码块时,特殊字符只显示为?
我认为问题在于,如果没有标题说明,jQuery默认认为$.get()响应是UTF-8.该插件根本没有为encoding / charset设置任何标头,因为我无法控制所有后端以及设置了哪些标头我无法改变这一点.
我在插件的响应中获得的唯一标头是:
我希望你理解我的问题.我有一个页面,我无法控制后端,我必须使用的是生成的HTMl.我无法在响应中更改或添加标头.我需要告诉jQuery响应实际上是在latin1而不是UTF-8,以便特殊字符的编码不会中断.我在jQuerys ajaxSetup中尝试过scriptCharset:’iso-8859-1′,但这只适用于脚本/ json类型,我正在使用HTML响应.
以上是大佬教程为你收集整理的jQuery $.get()没有设置标头时的回复字符集?全部内容,希望文章能够帮你解决jQuery $.get()没有设置标头时的回复字符集?所遇到的程序开发问题。
如果觉得大佬教程网站内容还不错,欢迎将大佬教程推荐给程序员好友。
本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
如您有任何意见或建议可联系处理。小编QQ:384754419,请注明来意。