2017-08-13 175 views
-1

如何从响应中提取值? 警报输出是[{“maturitydays”:“120”}] 我只想要价值!我如何获得价值?

$("#selectCrop").change(function(){ //this ajax will bring default configured crop data 
    var cropid = $("#selectCrop option:selected").val(); 
    var url = "<?php echo base_url();?>index.php/user/cropConfig/getData"; 
    $.ajax({ 
     data : {'cropid':cropid}, 
     type : 'post', 
     url  : url, 
     success :function(response) { 
      alert(response); 
     } 
    }) 
}); 
+0

@MaximShoustin其实它是一个数组,因此:'响应[0] .maturitydays' –

+0

@ErenTantekin是的,它应该采取0项目第一 –

回答

0

这是json。

使用json_decode使其成为数组,然后从数组中获取值(如果必须的话)。

$array = json_decode('{"maturitydays":"120"}',true); 
$value=$array["maturitydays"]; 
Echo $value; 

https://3v4l.org/Uc51m

2

看来你的反应是一个数组内由于方括号,这意味着你需要通过获得的值:

response[0]['maturitydays'] 

所以您的代码将是这样的:

$("#selectCrop").change(function(){ //this ajax will bring default configured crop data 
           var cropid = $("#selectCrop option:selected").val(); 
           var url = "<?php echo base_url();?>index.php/user/cropConfig/getData"; 
            $.ajax({ 
            data : {'cropid':cropid}, 
            type : 'post', 
            url  : url, 
            success :function(response) { 
             alert(response[0]['maturitydays']); 
            } 
            }) 
           }); 
+1

响应[0] [“maturitydays”]是这样的反应[0] ['maturitydays']谢谢为你的帮助这是有帮助的 – Talha

0

作为响应得到的数据是JSON array的数量为JSON objects。 JSON(JavaScript对象表示法)可以立即用作JavaScript object(只要它不在string表单中,在这种情况下必须使用JSON.parse进行解析)。
当收到响应可以像使用一个常规的JavaScript阵列(如果你确定其永远只有1个对象,则可以选择第一个索引马上)访问它:

let obj = response[0]; 

当得到的对象,只是获得你想要,你会与一个正常的JavaScript对象的值:

let val = obj.maturitydays;