问题:
今天引入easyui里的datagrid, 发现列头title如果用中文的话,加载出来是乱码。
原因:
网页要求用UTF-8显示,但由于我们的OS大多是中文环境,所以添加一个文件后,默认的Encoding可能是Chinese Simplified(GBxxxx),字符集不一致导致乱码。
解决方案:
当一个页面的中文显示为乱码时,依次排查:
1. 相关的.cshtml文件,head添加<meta charset="UTF-8">。
2. 相关的.css文件,首行写上@charset "UTF-8";。
3. 相关的.js文件(尤其是生成datagrid的js,$("#tb").datagrid({...})),被引用时加上charset="utf-8"这个属性。
例如:<script src="/js/jquery/plugins/easyui/jquery-easyui-min.js" charset="utf-8"></script>。
3.1 如果用了combres混淆的话,那就手动更改所有js的Encoding.方法见第4步。
4. 所有相关文件的Encoding都改为UNICODE(UTF-8):vs打开文件,工具栏上File->Advanced Save Options...,选择UNICODE, OK。