我正在迭代SharePoint列表,结果通过JSON传递。这是通过.each
完成的然后我使用if语句(如果某个数据列等于某个短语)将该结果添加到页面上的无序列表中。
我的问题是它只添加了最后一次迭代。如何确保添加与if语句匹配的每个项目?
$.ajax({
url: "http://site/subsite/project/_api/Web/Lists/getByTitle('SharePoint List')/items",
type: "GET",
headers: { "ACCEPT": "application/json;odata=verbose" },
success: function(data){
$.each(data.d.results, function(index) {
var courseName = $(this).attr('Title');
var courseNumber = $(this).attr('Course_x0020_Number');
var active = $(this).attr('Active');
var courseUrl = $(this).attr('URL');
var trainingGroup = $(this).attr('Training_x0020_Group');
if (trainingGroup == 'Lab') {
document.getElementById('labListSpan').innerHTML = '<ul class="courseLists"><li><input type="checkbox" id="'+courseName.replace(/\s+/g, '')+'"/>'+courseName+'</li></ul>';
}
});
},
error: function(){
alert("Failed to query SharePoint list data. Please refresh (F5).");
}
});
}
pullTrainingCourses();
答案 0 :(得分:0)
document.getElementById('labListSpan').innerHTML = '<ul class="courseLists"><li><input type="checkbox" id="'+courseName.replace(/\s+/g, '')+'"/>'+courseName+'</li></ul>';
您每次都在替换innerHTML。而不是&#39; =&#39;使用&#39; + =&#39;