起初做過一個靜態的列表項創建更新,首先會有一個關聯ID項,經過Query可以找到父列表裏面的關聯ID,再去子列表用裏面的關聯ID去檢索。
父列表的列表項以及輸入框都是靜態的,父子列表也是固定的。通過關聯ProjectId去檢索出的子列表
function GetChapterItem(ListId) { //根據父列表的ID檢索出子列表ChapterList的列表項
context = new SP.ClientContext.get_current();
var list = context.get_web().get_lists().getByTitle('ChapterList');
var camlQuery = new SP.CamlQuery();
camlQuery.set_viewXml('<View><Query><Where><Eq><FieldRef Name=\'ProjectId\'/>' + '<Value Type=\'Text\'>' + ListId + '</Value></Eq>' + '</Where><OrderBy><FieldRef Name=\'ChapterNo\' Ascending=\'True\' /></OrderBy></Query></View>');
var listItems = list.getItems(camlQuery);
context.load(listItems, 'Include (ID,ProjectId,ChapterNo,ChapterName,Author1)');
// Make an asynchronous call, which will load our list
context.executeQueryAsync(
// Success callback
function () {
Next(listItems);
},
// Failure callback
function (sender, args) {
});
}
function Next(listItems) {
context.executeQueryAsync(
// Success callback
function () {
var listItemEnumerator = listItems.getEnumerator();
var number = listItems.get_count();
while (listItemEnumerator.moveNext()) {
var listItem = listItemEnumerator.get_current();
var FileName = listItem.get_fieldValues()["ChapterName"];
var FileIn = listItem.get_fieldValues()["Author1"];
var ListId = listItem.get_fieldValues()["ProjectId"];
var ListNo = listItem.get_fieldValues()["ChapterNo"];
var CID =listItem.get_fieldValues()["ID"];
var cont = $('#morioka tbody.mytbody');
var i = $('#morioka tr.row').size() + 1;
cont.append('<tr class="row"><td class="itemid">' + CID + '</td><td class="chapterno">' + ListNo + '</td><td class="chaptername" ><input type="text" value="' + FileName + '" name="wenzhang' + i + '"></td><td class="chapter" ><input
type="text" class="chaptername" value="' + FileIn + '" name="zuozhe' + i + '"></td><td><div id="del">刪除</div></td></tr>');
document.getElementById("test2").innerHTML = ListId;
}
$(document).on('click', '#del', function () {
$(this).parents('#morioka tr').remove();
return false;
});
},
// Failure callback
function (sender, args) {
});
}
這是根據關聯ProjectId動態創建子列表的HTML頁面。