Javascript Jquery-使用append()打印数组
我有一个巨大的表(临时)不同的视频。每个视频都有一个特定视频的链接“选择缩略图” 当你点击该链接时,会出现一个弹出窗口,显示该视频的8个不同缩略图 这是我的链接:Javascript Jquery-使用append()打印数组,javascript,jquery,arrays,append,Javascript,Jquery,Arrays,Append,我有一个巨大的表(临时)不同的视频。每个视频都有一个特定视频的链接“选择缩略图” 当你点击该链接时,会出现一个弹出窗口,显示该视频的8个不同缩略图 这是我的链接: <a class="bigThumbnailLink" onclick="showThumb({{stat.video_id}})">Choose</a> 输出的数组如下所示: var videos = []; videos[609417] = []; videos
<a class="bigThumbnailLink" onclick="showThumb({{stat.video_id}})">Choose</a>
输出的数组如下所示:
var videos = [];
videos[609417] = [];
videos[609417].push('http://1.jpg');
videos[609417].push('http://2.jpg');
videos[609420] = [];
我的职能
function showThumb(id){
$("#bigThumbnailArea").show();
jQuery.each(videos[id], function(i, val) {
$("#bigThumbnailArea").find("ul").append("<li><img src=" + val + "></li>");
});
}
函数showtumb(id){
$(“#bigtumbnailarea”).show();
每个(视频[id],函数(i,val){
$(“#bigtumbnailarea”).find(“ul”).append(“”);
});
}
这个代码正在运行。但是每次我点击一个链接,它不是只显示那个视频的缩略图,而是添加到数组中。所以第一次点击=8拇指(好),第二次点击=16拇指,第三次点击=24拇指等等
我知道这可能是“append()”唯一的工作方式……我尝试用其他插入方法(如.html())替换它,但它从来都不是我想要的结果。html()每次只返回1个缩略图)
我有点困惑我该怎么做
有什么帮助吗?您应该empty()
ul,然后将lis附加到其中
function showThumb(id){
$("#bigThumbnailArea").show();
var $ul = $("#bigThumbnailArea").find("ul").empty();
$.each(videos[id], function(i, val) {
$ul.append("<li><img src=" + val + "></li>");
});
}
函数showtumb(id){
$(“#bigtumbnailarea”).show();
var$ul=$(“#bigtumbnailarea”).find(“ul”).empty();
$。每个(视频[id],功能(i,val){
$ul.追加(“”);
});
}
这可能有效:$(“#bigtumbnailarea”).find(“ul”).empty().append(“”);注意empty()函数调用chained@Vikram:您希望清空循环外部的,这样就不会在每次迭代中清空。
function showThumb(id){
$("#bigThumbnailArea").show();
var $ul = $("#bigThumbnailArea").find("ul").empty();
$.each(videos[id], function(i, val) {
$ul.append("<li><img src=" + val + "></li>");
});
}