首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何在2013年在线JavaScript中使用SharePoint动态创建母版页文件?

如何在2013年在线JavaScript中使用SharePoint动态创建母版页文件?
EN

Stack Overflow用户
提问于 2013-10-04 12:19:29
回答 3查看 2K关注 0票数 2

我正在创建一个SharePoint应用程序,因为我想做下面的工作。

  1. 在母版页库中,复制当前母版页并创建新母版页。(就像我们手动创建新的SharePoint设计器一样。)
  2. 在新母版页中插入JavaScript引用并保存它。
  3. 应用新母版页作为默认母版页。

所有这些都应该只使用JavaScript来完成。

有人知道怎么做吗?

谢谢user988917

EN

回答 3

Stack Overflow用户

发布于 2016-03-28 07:05:44

若要获取当前母版页,请向以下端点发出get请求。

代码语言:javascript
复制
/_api/Web?$select=CustomMasterUrl,MasterUrl

若要更改当前母版页,

代码语言:javascript
复制
function MastePageChange() {
var clientcontext;
var cweb;
var customMasterURL = '/_catalogs/masterpage/NewMasterPage.master';
clientcontext = new SP.ClientContext.get_current();
cweb = clientcontext.get_web();
cweb.set_customMasterUrl(masterPageUrl);
cweb.set_masterUrl(masterPageUrl);
cweb.update();
clientcontext.executeQueryAsync(function() {
    alert("Master Page has been changed successfully \n" + customMasterURL);
}, function(sender, args) {
    alert("Error: " + args.get_message());
});
}
票数 1
EN

Stack Overflow用户

发布于 2013-10-25 17:57:43

我还没有在JS中尝试过这种方法,但是通常有类似的方法,所以查看服务器端代码会有所帮助。http://blog.vegaitsourcing.rs/2008/10/programmatically-uploading-master-pages.html这里也是如何使用JS上传文件的示例(我相信只适用于HTML5浏览器)http://msdn.microsoft.com/en-us/library/jj163201.aspx

棘手的是文件操作(注入JS).我看不出有什么好方法可以完全从JS中实现,您可能需要一些服务器端代码才能打开文件,注入新代码,保存文件,然后将其上传回去。

票数 0
EN

Stack Overflow用户

发布于 2013-11-01 17:51:09

要修改Masterpages,我建议查看这两个资源。

首先,一篇解释如何应用母版页的博客文章:

arichterwork.blogspot.com/2008/03/programmatically-inherit-master-page.html

例如web.MasterUrl = "/_layouts/custom.master"

接下来是核心对象上的SharePoint JavaScript API引用,在本例中是:

msdn.microsoft.com/EN-US/library/office/jj245288.aspx

您可以看到masterUrl和customMasterUrl都是可用的R/W。

最后,您需要做一些基本的文件操作。以下是MSDN资源:

FileTasks

还有两个挑战。第一个是关于权限:更新母版库是一种高权限操作。这里的另一个风险更大的挑战是,您正在将JS注入到页面中,JS可能被恶意使用。

如果您计划在SharePoint应用程序中使用这种方法,我会考虑找到另一种方法。这样的脚本注入是不允许的。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/19181000

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档