0
我有一個包含多個視圖的列表(大約15個視圖)。我怎樣才能添加一組相同的按鈕到頁面標題和以上列表Web部件下面的所有視圖?我有SharePoint設計師。我已經使用了內容編輯器Web部件,但我需要將它添加到所有視圖aspx頁面並添加相同的一組按鈕。 任何更好的解決方案?Sharepoint 2013列表視圖與常用按鈕菜單欄
感謝 Venky
我有一個包含多個視圖的列表(大約15個視圖)。我怎樣才能添加一組相同的按鈕到頁面標題和以上列表Web部件下面的所有視圖?我有SharePoint設計師。我已經使用了內容編輯器Web部件,但我需要將它添加到所有視圖aspx頁面並添加相同的一組按鈕。 任何更好的解決方案?Sharepoint 2013列表視圖與常用按鈕菜單欄
感謝 Venky
你可以閱讀使用JavaScript(JSOM)現有的視圖來檢索指定列表上的所有現有視圖。
在OnQuerrySucceed函數中循環瀏覽視圖時,您可以生成一個按鈕並將其添加到DOM。例如,在您的內容編輯器中添加一個元素並將其按下。
var viewCollection = null;
function runCode() {
var clientContext = new SP.ClientContext.get_current();
if (clientContext != undefined && clientContext != null) {
var web = clientContext.get_web();
var listCollection = web.get_lists();
var list = listCollection.getByTitle("Tasks");
this.viewCollection = list.get_views();
var viewInfo = new SP.ViewCreationInformation();
viewInfo.set_title('MyView');
this.viewCollection.add(viewInfo);
clientContext.load(this.viewCollection);
clientContext.executeQueryAsync(Function.createDelegate(this, this.onQuerySucceeded), Function.createDelegate(this, this.onQueryFailed));
}
}
function onQuerySucceeded() {
var viewInfo = 'Tasks list current views: \n\n';
var viewEnumerator = this.viewCollection.getEnumerator();
while (viewEnumerator.moveNext()) {
var view = viewEnumerator.get_current();
viewInfo += view.get_title() + '\n';
}
alert(viewInfo);
}
function onQueryFailed(sender, args) {
alert('Request failed. ' + args.get_message() + '\n' + args.get_stackTrace());
}