Codeigniter框架在IE下ajax提交中文乱码问题及解决办法
【后注】:2012-04-28
虽然发表了这篇文章,不过后来发现原来这个问题是由于前端extjs框架在提交ajax数据时没有对数据进行编码造成的,解决办法其实很简单,encodeURI()即可,下面是代码片段:
var store = Ext.create('Ext.data.Store', { id:'simpsearchStore', autoLoad: {start: 0,limit: js_config.search_limit}, fields:['id','cmv','name','unit','freq','src'], pageSize: js_config.search_limit, proxy: { type: 'ajax', url: encodeURI('/indicator/search?q='+q), reader: { type: 'json', root: 'docs', totalProperty: 'total', } }});function clean_string($str){if ($this->_is_ascii($str) === FALSE){$str = @iconv('UTF-8', 'UTF-8//IGNORE', $str);}return $str;}function clean_string($str){if ($this->_is_ascii($str) === FALSE){//$str = @iconv('UTF-8', 'UTF-8//IGNORE', $str);$str = @mb_convert_encoding($str,'UTF-8', 'UTF-8,ASCII,GBK');}return $str;}