如何将 json 编码结果从控制器传递到 javascript 变量

How to pass json encoded results from controller to javascript variable

我想将来自 codeigniter 控制器的 json 编码数组结果传递给视图中的 javascript 个变量

$.ajax
 ({
  type:'post',
  url: "<?php echo base_url(); ?>" +"",
  data:{
   d_name:d_name,
   d_password:d_password,
   dataType:"json",
  },
  success: function(result) {
    var obj = parseJSON(result);
    var u = obj.d_name; 
    var v = obj.d_password; 
    alert(v);
},
error: function() { 
  alert("error");
}
 });  

我的控制器输出在这里:

string(61) "[{"id":"1","doc_id":"1","d_name":"done","d_password":"done"}]" 

我想将 d_named_password 的值分配给 javascript 变量以验证

控制器代码:-

$data['result']=$this->Clinic_model->d_login($d_credentials); 
$result = json_encode($data['result']); 
var_dump($result);die;

1.Put dataType:"json",data 之外。

2.var obj = parseJSON(result); 不需要。

3.Now 你有数组对象赋值。

您需要执行以下操作:

$.ajax({
    type:'post',
    url: "<?php echo base_url(); ?>",
    data:{
        d_name:d_name,
        d_password:d_password
    },
    dataType:"json",
    success: function(result) {
        var u = result[0].d_name; 
        var v = result[0].d_password; 
        alert(v);
    },
    error: function() { 
        alert("error");
    }
});

并在您的控制器代码中使用 echo

$data['result']=$this->Clinic_model->d_login($d_credentials); 
echo $result = json_encode($data['result']);die;