无法通过$ .getJson()方法

时间:2015-11-11 01:42:08

标签: javascript jquery json

在很长一段时间内没有使用过json或javascript。我的javascript在$ .getJson()方法之前没问题,并且在该方法之后停止继续。当我使用JSON的直接路径时,我没有在控制台中看到任何错误。

range(10)

当我检查控制台时,我得到第一次打印但不是第二次打印,没有错误。甚至不确定如何调试这个。提前致谢。

这是我被要求的json代码。

 $(document).ready(function () {
    var myList;
    console.log("here");
    $.getJSON('H:\Documents\Visual Studio 2013\WebSites\WebSite1\vegetables.json').done(function (data) {
        console.log("also here");
        myList = data;
        console.log(myList['vegetables'][0].name);

        var uList = document.getElementById("items");
        for (i = 0; i < myList['vegetables'].length; i++) {

            var div = document.createElement('div');
            div.setAttribute('class', 'col-sm-3 vegetables');

            var name = document.createElement('h3');
            name.innerHTML = myList['vegetables'][i].name;
            div.appendChild(name);

            var description = document.createElement('p');
            description.innerHTML = myList['vegetables'][i].description;
            div.appendChild(description);

            var price = document.createElement('p');
            price.innerHTML = myList['vegetables'][i].price;
            div.appendChild(price);

            var addToCart = document.createElement('button');
            addToCart.setAttribute('value', i);
            addToCart.setAttribute('class', 'btn btn-primary');
            addToCart.innerHTML = "Add to Cart <img src='glyphicons-203-shopping-cart.png' />";
            addToCart.setAttribute('onClick', 'carrot(this)');
            div.appendChild(addToCart);

           /* <div class="col-sm-3 vegetables" >

                    <h3 id="div1Name"></h3>
                    <p id="div1Description">Carrots are orange </p>
                    <p id="div1Price"></p>
                    <button onclick="carrot(this)" type="button" class="btn btn-primary" />Add to Cart <img src="glyphicons-203-shopping-cart.png" />
                </div>*/


            //li.appendChild(panel);
            uList.appendChild(div);
        }
    });

    //var newDiv = document.createElement("div");
    //var newContent = document.createTextNode("Hi there and greetings!");
    //newDiv.appendChild(newContent);
    //var currentDiv = document.getElementById("div1");
    //document.body.insertBefore(newDiv, currentDiv);
});

}

2 个答案:

答案 0 :(得分:0)

您将无法使用以下路径加载文件:

H:\Documents\Visual Studio 2013\WebSites\WebSite1\vegetables.json

由于浏览器的原始限制相同。像

一样直接访问它
/vegetables.json

答案 1 :(得分:0)

根据我对这个问题的理解,我试图在下面提供解决方案。我觉得问题的区域是json格式,而不是你如何定义路径。话虽如此,提供json文件的相对路径总是好的。

这是我的json文件内容。相信我,这是根据您提供的JavaScript代码编写的。

{
    "vegetables": [{
        "name": "Bringal",
        "description": "Purple colored vegetable",
        "price": "$4"
    },
    {
        "name": "Cauliflower",
        "description": "White flower leafy vegetable",
        "price": "$8"
    }]
}

如果我的解决方案以任何方式帮助您,请告诉我。升值。