thinkphp 查表返回的陣列,js解析有UNICode編碼,解決辦法
阿新 • • 發佈:2018-12-18
public function getDeviceMsg(){ $allDevicesMsg = M("newdevicesstatus")->getField("status",true); $allDevicesMsg2 = array(); // var_dump($allDevicesMsg); for($i=0;$i<sizeof($allDevicesMsg);$i++){ $allDevicesMsg2[$i] = urlencode($allDevicesMsg[$i]); }// $this->ajaxReturn( urlencode($allDevicesMsg)); // 不能對整個陣列urlencode
$this->ajaxReturn(json_encode(array('status'=>'1', 'errMsg'=>$allDevicesMsg2))); }
$.ajax({ url:"getDeviceMsg",//這裡指向的就不再是頁面了,而是一個方法。 data:{}, type:"POST", dataType:"JSON",//和控制器轉換對應 async:false, success: function(data){ alert(decodeURIComponent(data));//這裡要用索引,使用eq讀取不出來資料。 cs = objipt_exist2.childNodes for(i=0;i<cs.length;i++) { cs[i].append(",狀態"+data); } }, error : function(XMLHttpRequest, textStatus, errorThrown) { alert(XMLHttpRequest.status + ",xddwd" + textStatus); } });