Javascript中的完整url sharepoint项目
我正在尝试获取sharepoint中某个项目的ContentTypeId,以获取该项目的完整url,从而获取该项目的二进制文件,然后将其发送到另一个平台 因此,在这里,我将此代码放在element.xml中,以获取我正在选择的项目的列表ID和文档ID,然后将它们发送到Sharepoint对话框中的ASPX页面,以定义项目的目标,然后在回发中,将二进制文件流化并发送到另一个平台。问题是:要获取项目的完整url,我需要ListId、ItemId和ContentTypeId。 因为我在这里找到了一个流式传输二进制文件的代码: 我需要我的项目的完整url 有什么想法吗 谢谢Javascript中的完整url sharepoint项目,javascript,sharepoint,Javascript,Sharepoint,我正在尝试获取sharepoint中某个项目的ContentTypeId,以获取该项目的完整url,从而获取该项目的二进制文件,然后将其发送到另一个平台 因此,在这里,我将此代码放在element.xml中,以获取我正在选择的项目的列表ID和文档ID,然后将它们发送到Sharepoint对话框中的ASPX页面,以定义项目的目标,然后在回发中,将二进制文件流化并发送到另一个平台。问题是:要获取项目的完整url,我需要ListId、ItemId和ContentTypeId。 因为我在这里找到了一个流
var iddocs ='';
var listId ='';
function geturl()
{
var context = SP.ClientContext.get_current();
this.web = context.get_web();
listId = SP.ListOperation.Selection.getSelectedList();
var list = this.web.get_lists().getById(listId);
var ok = false;
try
{
if ( SP.ListOperation.Selection.getSelectedItems(context) !== false)
{
var items = SP.ListOperation.Selection.getSelectedItems(context);
var url='listId:'+listId+ ' Number of selected items: ' + items.length ;
var i = 0;
if(items.length==0)
{
}else{
while( i != items.length )
{
url += ' Doc' + i + ': ' + items[i].id;
if(i>0){iddocs += '-'};
iddocs += items[i].id;
i++;
};
ok = true;
alert(url+' Id of clicked item:'+{ItemId});
};
};
}
catch(err)
{
};
return ok;
};
function OpenDialog(pidliste) {
var options = SP.UI.$create_DialogOptions();
options.width = 600;
options.height = 600;
options.title = 'Envoyer vers Nuxeo';
options.url ='/_Layouts/SPTest.CustomMenuItem/index.aspx?click={ItemId}';
if(pidliste){options.url += '&ids='+pidliste +'-'+ iddocs;};
options.dialogReturnValueCallback = Function.createDelegate(null, CloseCallback);
SP.UI.ModalDialog.showModalDialog(options);
}
function CloseCallback(result, target) {
if (result == SP.UI.DialogResult.OK) {
}
if (result == SP.UI.DialogResult.cancel) {
SP.UI.Notify.addNotification('Opération canceled', false, '', null);
}
}
if(geturl())
{
OpenDialog(listId);
}else{
alert('Please select an item');
};
我找到了解决办法。事实上,可以通过以下方式访问项目:
{SiteUrl}+{ItemUrl}
下载功能链接在我的第一篇文章中。但它不适用于多个项目,使用此方法,您只能访问所选项目的属性
您必须注意,如果要访问SP文件,必须通过以下方式设置request.credential:
request.Credentials = System.Net.CredentialCache.DefaultCredentials;
这将获取您正在使用的当前凭据
希望能有帮助