我想使用JQUERY从laravel中提取JSON数据,但结果总是未定义。
这是我得到的json代码:
{"data":{"id":1,"title":"glove hard","code":"0102","category":"glove"}}
这是js代码:
$('#show').click(function(){
$.ajax({
url: 'example.com/api/product/1',
method: 'GET',
dataType: 'json',
success: function(data){
$('#result').text(data.category)
}
})
})
答案 0 :(得分:1)
由于您的代码返回JSON数据
{"data":{"id":1,"title":"glove hard","code":"0102","category":"glove"}}
ajax成功函数参数被称为数据,而json结果中的第一个键是命名数据,要访问类别的值,你的代码应该是
$('#show').click(function(){
$.ajax({
url: 'example.com/api/product/1',
method: 'GET',
dataType: 'json',
success: function(data){
//Call the first wrapper key first.
$('#result').text(data.data.category)
}
})
})
答案 1 :(得分:0)
使用$ .parseJSON将格式良好的json字符串解析为js对象。 您的成功回调将是
success: function(data){
var obj = $.parseJSON(data);
$('#result').text(obj.data.category)
}
答案 2 :(得分:0)
让它变得更简单:
jQuery('#show')
.click(function() {
jQuery
.getJSON('example.com/api/product/1')
.done(function(data) {
jQuery('#result').text(data.data.category);
}
});