Heim >Backend-Entwicklung >PHP-Tutorial > 为什么json在ie上输入中文查询的结果不显示,但在火狐、谷歌上又可以?该如何解决

为什么json在ie上输入中文查询的结果不显示,但在火狐、谷歌上又可以?该如何解决

WBOY
WBOYOriginal
2016-06-13 13:41:06813Durchsuche

为什么json在ie上输入中文查询的结果不显示,但在火狐、谷歌上又可以??
为什么json在ie上输入中文查询的结果不显示,但在火狐、谷歌上又可以??
查询是没问题,因为当输入数字时,就显示数据,而中文是查询到数据,调试也看到数据保存在json 里面了,但问题就是我展示在页面上?请各位高手帮忙解决一下,在此先谢谢各位了!
  查询数据,通过json_encode()public function ajaxloadAction(){
$rsName=$this->verify_str($this->_request->getParam('rsName'));
$rsPhone=$this->verify_str($this->_request->getParam('rsPhone'));
$rsAddress=$this->verify_str($this->_request->getParam('rsAddress'));
$rsAge=$this->verify_str($this->_request->getParam('rsAge'));

$responsibleModel=new ResponsibleModel();
$srArray=$responsibleModel->getquery($rsName,$rsPhone,$rsAddress,$rsAge);
//print_r($srArray);//$srArray=$this->getAllList($responsibleModel);
// print_r($srArray);
 
echo json_encode($srArray);

}

在页面调用json
$.getJSON(url, function(json){
alert(json.length);
if(json.length !=0){
$(tab_id).empty();
$.each(json,function(i,responsible){
str +="

"+
" "+responsible.responsible_name+""+
""+responsible.responsible_phone+""+
""+responsible.responsible_address+" ";
});
$(tab_id).append(str);
}else{
alert("没有你想要查询的数据!");
}
});

------解决方案--------------------
估计是编码的问题
------解决方案--------------------
alert(json.length); 时是否有值?
alert(json); 看到什么?
------解决方案--------------------
那你换个低版本的 IE 看看
可能是 IE9 不支持你的代码
------解决方案--------------------
我以前也有这个情况。、、、

很无解。……


------解决方案--------------------
html php 都保存为utf8格式的。。。注意别有bom
------解决方案--------------------
输出的字符串格式问题,在js里转换成json格式,或者中文编码问题,用''标志中文值。
Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn