Javascript jQuery.getJSON和.ajaxget请求都返回null

Javascript jQuery.getJSON和.ajaxget请求都返回null,javascript,jquery,html,ajax,json,Javascript,Jquery,Html,Ajax,Json,我正在尝试用ajax加载json文件以填充html,无论出于何种原因,当我尝试加载json文件时,从简单ajax调用或.getJSON调用返回的json都是空的。这是我的HTML: <!doctype html> <html> <head> <title>Lab 4 AJAX</title> <script type="text/javascript" src="resources/jquery-1.4.3

我正在尝试用ajax加载json文件以填充html,无论出于何种原因,当我尝试加载json文件时,从简单ajax调用或.getJSON调用返回的json都是空的。这是我的HTML:

<!doctype html>
<html>
  <head>
     <title>Lab 4 AJAX</title>
     <script type="text/javascript" src="resources/jquery-1.4.3.min.js"></script>
     <script src="lab4.js"></script>
  </head>
  <body>
    <div id="song-template">
      <a id="site" href="#"><img id="coverart" src="images/noalbum.png"/></a>
      <h1 id="title"></h1>
      <h2 id="artist"></h2>
      <h2 id="album"></h2>
      <p id="date"></p>
      <p id="genre"></p>
    </div>
  </body>
</html>
下面是我尝试加载的javascript:

function updateHTML(json) 
{
    var templateNode = $("#song-template").clone(true);
    $("#song-template").remove();

    debugger;

    $.each(json, function(key, song)
    {
        var songNode = templateNode.clone(true);
        songNode.children("#site").href(song.bandWebsiteURL);
        songNode.children("#coverart").src(song.albumCoverURL);
        songNode.children("#title").text(song.name);
        songNode.children("#artist").text(song.artist);
        songNode.children("#album").text(song.album);
        songNode.children("#date").text(song.year);
        songNode.children("#genre").text(song.genre);
        $("body").append(songNode);
    });
}

$(document).ready(function()
{
    $("#site").click(function() 
    {
        $.getJSON("lab4.json", updateHTML);
        // $.ajax(
        // {
        //  url: "lab4.json",
        //  type: "GET",
        //  dataType: "json",
        //  success: updateHTML
        // });
    });
});

运行updateHTML时,getJSON和ajax都会导致json为null。知道是什么导致了这种情况吗?

.href
.src
不是jQuery方法。你需要写:

.attr("href", 
.attr("src", 

检查控制台网络选项卡,请求是否通过?调用
lab4.json时,您从服务器得到了什么响应?我看到了非常可能的重复idsituation@tymeJV,我刚刚查看了网络请求,发现一个错误-访问控制Allow Origin不允许Origin null。你知道这是什么原因吗?这是一个跨域请求吗?谢谢。我更新了它,但是ajax请求仍然返回null。@Logan在浏览器中转到
lab4.json
时会发生什么?请确保路径也匹配,因为您使用的是相对路径。我刚刚查看了网络请求,并且出现了一个错误-访问控制允许源不允许源null。你知道这是什么原因吗?@LoganShire是指向另一个域的
getJSON
的URL?不知道。它是一个json文件,与javascript文件位于同一目录中。
.attr("href", 
.attr("src",