Javascript中的根网站集

时间:2013-08-20 18:45:38

标签: sharepoint sharepoint-2010

当上下文位于子站点,JavaScript或JQuery中时,如何获取根站点集合URL。

5 个答案:

答案 0 :(得分:2)

您可以使用客户端对象模型

来使用以下内容
var clientContext = new SP.ClientContext();
var owebsite = clientContext.get_site.get_rootWeb();

如果没有客户端对象模型,您可以使用以下

var siteCollectionPath= _spPageContextInfo.siteServerRelativeUrl;

答案 1 :(得分:1)

var clientContext = new SP.ClientContext.get_current();
this.web = clientContext.get_site().get_rootWeb();

这对我有用。

答案 2 :(得分:0)

您可以通过使用可用信息获取没有客户端对象模型的URL,并从中对其进行字符串解析。不像Client-Object模型那样健壮,但对简单任务来说复杂程度要低得多。

window.location.href 

...为您提供完整的窗口网址(例如“http://sitecollection.com/sites/mysite/Lists/myList/NewForm.aspx?ContentTypeId=0x01006AC2C39AA621424EBAD9C2AC8A54F8B9007B626ABEEB66E34196C46E13E0CA41A2&ContentTypeName=xxxx”)

L_Menu_BaseUrl 

或者

_spPageContextInfo.siteServerRelativeUrl

...(正如Jinxed指出的那样)会给你相对的网址(例如“/ sites / mysite”)

答案 3 :(得分:0)

下面的示例脚本显示了如何检索根网站。 onQuerySucceedSample函数警告根网站标题。

getRootWeb = function () {
    //Get and load a reference to the root web of the current site collection.
    var ctx = new SP.ClientContext.get_current();
    var site = ctx.get_site();
    this.rootWeb = site.get_rootWeb();

    ctx.load(this.rootWeb);
    //Ask SharePoint to pull data for us
    ctx.executeQueryAsync(Function.createDelegate(this,this.onQuerySucceed),Function.createDelegate(this, this.onQueryFailed));
};

//Function executed on success
onQuerySucceed = function () {
    alert(this.rootWeb.get_title());
};

//Function executed on failure
onQueryFailed = function (sender, args) {
    alert('Unable to retrieve data from the SharePoint. Request failed. ' + args.get_message() + '\n' + args.get_stackTrace());
};

答案 4 :(得分:0)

您的意思是根网站或根网站集吗?

这个将为您提供根网站集:

_spPageContextInfo.siteAbsoluteUrl.replace(_spPageContextInfo.siteServerRelativeUrl,_spPageContextInfo.siteServerRelativeUrl == \“/ \”?\“/ \”:\“\”)+ \“”

从我的帖子:http://www.rdacorp.com/2015/03/alternate-solution-alternate-css-url-sharepoint-2013-online/