你好我在我的ajax函数上使用json检索数据时出现此错误。它不会返回任何数据。这是我的代码
$.ajax({
url: "php/getCategory.php?action=getyear",
cache: false,
dataType: "json",
success: function(data){
$.each(data.items, function(i,item){
$("#catYear").append('<option value="'+item.id+'">'+item.name+'</option>');
});
}
});
当我尝试删除dataType:“json”时,它会传递给成功:function。我认为问题出在我的json上。我也回应了我的getCategory.php的输出,我认为它们没有问题。下面是我的php json_encode的输出。
{items:[{"id":"1","name":"2010"},{"id":"2","name":"2011"}]}
谢谢!
答案 0 :(得分:1)
:
重要提示:从jQuery 1.4开始,如果JSON文件包含语法错误,则请求通常会以静默方式失败。出于这个原因,避免频繁手动编辑JSON数据。 JSON是一种数据交换格式,其语法规则比JavaScript的对象文字符号更严格。例如,以JSON表示的所有字符串,无论它们是属性还是值,都必须用双引号括起来。有关JSON格式的详细信息,请参阅http://json.org/。
所以jour json字符串中的元素项不是双引号尝试类似的东西:
{"items":[{"id":"1","name":"2010"},{"id":"2","name":"2011"}]}