我有一個報告頁面,我不想頁面刷新。在選擇列表更改時,我調用API來生成新報告並使用List.js將其吐出到DOM。我遇到的問題是:只有加載的第一個報告與排序功能正常工作。我相信這個問題的核心是我如何「清爽」清單。下面是代碼:如何正確刷新使用List.js的列表
function initializeReport(videoName) {
if (videoName) {
$.ajax({
url: '/api/report/' + videoName,
type: "GET",
dataType: "json",
success: function (data) {
var values = [];
var countWatched = 0;
data.forEach(function (entry) {
values.push({ name: entry.UserName, title: entry.Title, count: entry.Count, time_played: entry.TimePlayed })
if (entry.TimePlayed > 0) {
countWatched++;
}
});
var options = {
valueNames: ['name', 'title', 'time_played', 'count'],
item: '<li><div class="name"></div><div class="title"></div><div class="time_played"></div><div class="count"></div></li>'
};
var userList = new List('views', options);
userList.remove();
userList.add(values);
}
});
}
}
編輯 這裏是jsfiddle