我正在使用
jquery $.get
JSON来检索城市列表.
一切都很好,但我来自爱沙尼亚,我们正在使用像õ,ü这样的角色. ä,ö.
当我将这样的字母传递给回调函数时,我一直得到空字符串.我试过base64编码(服务器端)-decode(jquery base64插件)字符串(我认为这是一个好主意,只要我可以用PHP压缩页面,所以我不必担心带宽),但是通过这种方式,我最终得到了一些随机的中文符号.
什么是这个问题的最佳解决方法.
谢谢.
解决方法
你需要utf8_encode()你的输出数据.没有必要在客户端将您的编码设置为UTF-8,因为它已经是默认值.
<?PHP if( isset( $_GET['json'] ) ) { die( json_encode( array( 'text' => utf8_encode( 'õ,ü. ä,ö' ) ) ) ); } include_jquery(); # this outputs jquery include >? <script> $.getJSON( 'this_file.PHP',{ 'json': 1 },function( data ) { console.log( 'data',data ); }); </script>