SharePoint 2013 在通过 REST/jQuery 创建网站时自定义属性包?

SharePoint 2013 customize propertybag when creating site via REST/jQuery?

我可以使用来自 MSDN 示例的 REST api 和 jQuery 从自定义模板成功创建子站点。但是有没有办法在此过程中设置自定义属性包键值?

例如,站点模板具有 myRegionmyGroupmyType[=23 的自定义属性包键=], myDate 我想根据表单字段中的条目动态显示。我可以在调用 ajax 时设置这些值吗?如果我尝试将它们设置为参数,则会出现错误...

"The property 'myRegion' does not exist on type 'SP.WebInfoCreationInformation'. Make sure to only use property names that are defined by the type."

这告诉我 SP.WebInfoCreationInformation 正在寻找特定的 key/value 对,但我无法在任何地方找到列表。

您可以尝试使用 CSOM。像这样 -

function setWebProperties() {

var execOperation = function () {
    var ctx = new SP.ClientContext.get_current();
    var web = ctx.get_web();
    this.properties = web.get_allProperties();

    this.properties.set_item("<propKey>", "<propValue>");
    ctx.load(web);
    web.update();

    ctx.executeQueryAsync(function fSuccess(data) {
        alert(this.properties.get_item("<propKey>"));
    }, function fError(sender, args) {
        alert("Error - " + args.get_message());
    });
}
SP.SOD.executeFunc('sp.js', 'SP.ClientContext', execOperation);
}