0

我对 JSON 很不熟悉,因为我没有过多地使用它,我正在尝试学习其中的一些。

所以我有一个 ajax 请求,它给了我这个:[{"palvelu_id":"1","palvelu_nimi":"Meikkikoulutus","palvelu_kuvaus":"Kuvaus","palvelu_hinta":"10"}]

我正在尝试使用jQuery.parseJSON在页面上使用它。

var palveluData = $.parseJSON(d);
$("#ajanvarausInfo").html(palveluData.palvelu_kuvaus+"<br>"+palveluData.palvelu_hinta);

但是我得到未定义的答案,我在这里做错了什么?

4

2 回答 2

1

你应该得到数组的第一个元素:

$("#ajanvarausInfo").html(palveluData[0].palvelu_kuvaus+"<br>...");

如果数组有超过 1 个元素,你应该遍历数组,你可以使用 jQuery$.each()实用函数。

于 2013-10-12T12:06:56.447 回答
0

编辑::

哇,看起来我在回复之前把窗口打开了很长时间-.-

你有一个外部数组,所以你需要考虑到这一点(你的 php 端可能不正确)

$("#ajanvarausInfo").html(palveluData[0].palvelu_kuvaus+"<br>"+palveluData[0].palvelu_hinta);

通常,在正确设置所有内容时您不需要它

$.ajax ({
   url: 'myurl',
   type: 'POST',
   data: { key_value pairs here },
   dataType: 'json',
   success: function(response){

      $("#ajanvarausInfo").html(response.palvelu_kuvaus+"<br>"+response.palvelu_hinta);

   });
});

在php方面

$response = array(
   "palvelu_id" => "1", 
   "palvelu_nimi" => "Meikkikoulutus", 
   "palvelu_kuvaus" => "Kuvaus", 
   "palvelu_hinta" => "10"
);

echo json_encode($response);
于 2013-10-12T12:28:53.883 回答