Javascript jquery中未显示json数据

Javascript jquery中未显示json数据,javascript,php,jquery,json,Javascript,Php,Jquery,Json,Html代码是: <select name="ser" id="ser" class="form-control" onchange="getPrice(this.value);"> <option value="">--Select--</option> <option value="Value11">Value1</option> <option value="Value2">Value2</option>

Html代码是:

<select  name="ser" id="ser" class="form-control" onchange="getPrice(this.value);">
<option value="">--Select--</option>
<option value="Value11">Value1</option>
<option value="Value2">Value2</option>
</select>
<input type="text" name="sale" id="saleprice"  class="form-control" />
<input type="text" name="sale" id="saletax"  class="form-control" />
<input type="text" name="sale" id="avalqty"  class="form-control" />
这是我的PHP页面数据:

$data = array();    
$values=$variable1['value1'].'|'.$variable2['value2'].'|'.$variable3;
array_push($data, $values);
echo json_encode($data);
#saleprice
上的值为:[“61.25
#avalqty
上的值为:155”
#saletax
上的值为:1<代码>#saletax值正确。。 如何获取
#saleprice
[“61.2561.25
#avalqty
155”]155

在成功函数中尝试JSON.parse(response)。 您正在数组中发送字符串,因此需要首先解析它,使用数组索引访问该字符串,然后拆分该字符串。否则,您可以直接在php代码中回显字符串,而不是将其放入数组中,然后使用json_编码

因此,您的php代码应该是

$values=$variable1.'|'.$variable2.'|'.$variable3;
echo $data;

这样,您将在ajax响应中收到一个字符串,您可以直接拆分该字符串。

我认为您可以做的是从服务器返回一个
键值
对象,并在成功处理程序中使用它。在本例中,您将返回一个带有单个字符串值的数组

$data = array();    
$data['price'] = $variable1['value1'];
$data['tax'] = $variable2['value2'];
$data['qty'] = $variable3;
echo json_encode($data);
然后

改变

var valuesar=response.split(“|”)

 var valuesar = response[0].split("|");

嘿,你可以用下面的方式使用你的代码

<?php
$data = array();    
$values='6.15'.'|'.'52.22'.'|'.'55.25';
array_push($data, $values);

$rr=json_encode($data);


$ltrim = ltrim($rr, '["');
$rtrim = rtrim($ltrim, '"]');


// echo $rtrim;



?>
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.12.2/jquery.min.js"></script>
<script type="text/javascript">

jQuery(document).ready(function() {


var response='<?php echo  $rtrim ?>';
console.log(response);

var valuesar  = response.split("|");


$('#saleprice').val(valuesar[0]);
$('#saletax').val(valuesar[1]);
$('#avalqty').val(valuesar[2]);

 console.log(valuesar[0]);

 });

 </script>
 <!DOCTYPE html>
 <html>
 <body>

<form>
<input type="text" name="saleprice" id="saleprice" >
<input type="text" name="saletax" id="saletax" >
<input type="text" name="avalqty" id="avalqty" >
</form> 

</body>
</html>

在ajax success中尝试console.log(response)并在此处发布您得到的结果。您的浏览器控制台中是否存在任何错误如何在上述php代码中附加一个列表框作为数组值。
 var valuesar = response[0].split("|");
<?php
$data = array();    
$values='6.15'.'|'.'52.22'.'|'.'55.25';
array_push($data, $values);

$rr=json_encode($data);


$ltrim = ltrim($rr, '["');
$rtrim = rtrim($ltrim, '"]');


// echo $rtrim;



?>
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.12.2/jquery.min.js"></script>
<script type="text/javascript">

jQuery(document).ready(function() {


var response='<?php echo  $rtrim ?>';
console.log(response);

var valuesar  = response.split("|");


$('#saleprice').val(valuesar[0]);
$('#saletax').val(valuesar[1]);
$('#avalqty').val(valuesar[2]);

 console.log(valuesar[0]);

 });

 </script>
 <!DOCTYPE html>
 <html>
 <body>

<form>
<input type="text" name="saleprice" id="saleprice" >
<input type="text" name="saletax" id="saletax" >
<input type="text" name="avalqty" id="avalqty" >
</form> 

</body>
</html>