我想用jQuery文件填充我的HTML,並使用getJSON調用加載JSON文件。不幸的是,我的jQuery似乎沒有任何工作。jQuery根本不工作
這裏是我的HTML:
<!doctype html>
<html>
<head>
<title>Lab 4</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>
我的一些JSON文件,在子目錄稱爲資源:
[
{
"name" : "Short Skirt, Long Jacket",
"artist" : "Cake",
"album" : "Comfort Eagle",
"genre" : "Rock",
"year" : 2001,
"albumCoverURL" : "images/ComfortEagle.jpg",
"bandWebsiteURL" : "http://www.cakemusic.com"
}
]
而且我的JavaScript:
function updateHTML(result)
{
var templateNode = $("#song-template").clone(true);
$("#song-template").remove();
$.each(result, 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);
});
}
function loadJSON()
{
var result = $.getJSON("resources/lab4.json");
updateHTML(result)
}
$("#site").click(function()
{
loadJSON();
});
的問題,到目前爲止,是這樣的: 1.我的網站ID上的點擊監聽器根本不起作用。我也嘗試使用coverart,並沒有骰子。 2.當我顯式調用loadJSON();我在調試器中瀏覽updateHTML時,我的克隆或刪除都沒有做任何事情,而我的.each只是被忽略。 如果有人能指出我在做什麼錯誤,將不勝感激。我是新來的所有這jQuery和JavaScript的東西,並不真正知道我在做什麼。
1日的事情1:你需要設置你的點擊監聽器,一個'$(「文件」)準備」語句,如果你還沒有做到這一點。 –
可能在這裏使用JS模板是有意義的。或者underscore.js或Handlebars模板 –