TypeError:value是未定义的jquery

时间:2015-06-08 02:19:49

标签: javascript jquery

我正在尝试从json中提取对象。但我得到TypeError: recent_prod[a] is undefined。我已经多次这样做了没有错误。但这次我无法得到我错的地方。谢谢。

$(document).ready(function(){
    var recents = "";
    var imges = "";
    var imge = "";
    var recent_prod = <?php echo $recent_prod; ?>;
    for(var a = 0; a < 8; a++)
    {
        imges = recent_prod[a].image;           //typeError.
        alert(imges);
        imge = imges.split[","];
        recents += '<a href="' + base_url + 'init/product/' + recent_prod[a].id + '">'+
                '<div class="related_prod_thumb">' +
                    '<div class="related_prod_img">'+
                        '<span class="helper"></span>'+
                        '<img src="' + base_url + 'uploads/thumbnail/' + imge + '" width="100">'+
                    '</div><div class="related_prod_title">' + recent_prod[a].title +'</div>'+
                    '<div class="related_prod_price">' + 'Rs. ' + recent_prod[a].price + '</div></div></a>';
    }
    $("#recent_views").html(recents);
});

2 个答案:

答案 0 :(得分:0)

检查页面的源代码,看看是否有这一行:

var recent_prod = <?php echo $recent_prod; ?>;

实际上是正确打印$recent_prod,如果是,请查看它是否是数组。另外,这一行:

for(var a = 0; a < 8; a++)
{
    imges = recent_prod[a].image; 

尝试阅读recent_prod而不检查其是否包含内容。将8替换为recent_prod.length。也就是说recent_prod也是一个数组。

答案 1 :(得分:0)

为确保仅使用合法值,请更改

for(var a = 0; a < 8; a++)

for(var a in recent_prod)