AJAX调用没有API

时间:2016-04-20 07:49:33

标签: jquery json ajax

error html INDEX Screenshot

在我点击新集合列表项目的那一刻,我在JSON中保存的所有汽车都会出现在网页上。

HTML代码

<a href="javascript:void(0)" class="dropbtn" onclick="myFunction()">NEWST</a>
      <div class="dropdown-content" id="myDropdown">
      <ul>
        <li>  <a href="#">New collection</a></li>
          <li><a href="#">Gifts and sales</a></li>
          <li><a href="#">Service centers</a></li>
          </ul>
      </div>
   </li>
   </ul>
      <!--<button onclick="addimage();"> Click</button>-->
    </div>

我想让它变得动态但是对于它我需要一个API,我可以通过提供它的URL来获取信息。但是现在我只是用JSON保存数据并通过AJAX调用它。

AJAX代码:

var clickedLi = $(this);
$.ajax({
    type: "GET",
    url: "http://localhost:8000/scripts/car.json",
    dataType: "json",
    async: false,
    success: function(result) {
        BuildNewList(result,clickedLi);
    },
    error: function(err) {

    }
});

function BuildNewList(jsonData,liTag){ 
    liTag.empty(); 
    var data = JSON.parse(jsonData);
    liTag.append('New Collection<ul></ul>');

    {
        for (var make in data.cars) {
            for (var i = 0; i < data.cars[make].length; i++) {
                var model = data.cars[make][i].model;
                liTag.find('ul').append('<li>' + make + ' - ' + model + '</li>')
            }
        }
}

JSON:

var anotherData = '{"cars":
    {"Honda":[
        {"model":"Figo"},
        {"model":"City"}
        ],
    "Audi":[
    {"model":"A6"},
    {"model":"A8"}
        ]
    }
}';

但它没有得到填充而没有在屏幕上显示。

为什么不给我任何输出?是否ajax中的 Success:部分是错误的还是JSON对象正在运行?我收到了这个错误:

another errors error

我错在哪里,我该如何解决?还有一件事是我很困惑我在AJAX中提供的json文件URL是否正确?

任何帮助都将不胜感激。

1 个答案:

答案 0 :(得分:0)

你的jQuery没有加载。它正在获得file协议,这不应该是这种情况。

将你的jquery包含为:

<script src="https://code.jquery.com/jquery-2.2.3.min.js"

另外,请确保它在localserver上运行,因为您正在使用AJAX。