Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/433.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 访问SharePoint文档库中的多个文件夹并在网页上显示其内容_Javascript_Sharepoint - Fatal编程技术网

Javascript 访问SharePoint文档库中的多个文件夹并在网页上显示其内容

Javascript 访问SharePoint文档库中的多个文件夹并在网页上显示其内容,javascript,sharepoint,Javascript,Sharepoint,我可以访问SharePoint文档库中的单个文件夹,并在网页上显示其内容。我可以访问同一SharePoint文档库中的第二个(不同)文件夹并显示其内容。我知道如何实现这一点的唯一方法是复制脚本,并将脚本放在各自独立的函数中。我通过回调函数调用其中一个函数。下面是我正在做的脚本 我所使用的过程会产生一些零散的结果,有时是在工作中;这意味着有时会显示其中一个文件夹的内容,有时会显示两个文件夹的内容,这是命中或未命中。是否有更好的方法可以实现这一目标并获得一致的结果;始终在网页上显示两个文件夹的内容。

我可以访问SharePoint文档库中的单个文件夹,并在网页上显示其内容。我可以访问同一SharePoint文档库中的第二个(不同)文件夹并显示其内容。我知道如何实现这一点的唯一方法是复制脚本,并将脚本放在各自独立的函数中。我通过回调函数调用其中一个函数。下面是我正在做的脚本

我所使用的过程会产生一些零散的结果,有时是在工作中;这意味着有时会显示其中一个文件夹的内容,有时会显示两个文件夹的内容,这是命中或未命中。是否有更好的方法可以实现这一目标并获得一致的结果;始终在网页上显示两个文件夹的内容。任何帮助都将不胜感激

我正在使用的脚本:

memoColumn(regColumn);
//左列列表
职能(法规){
jQuery(文档).ready(函数(){
var scriptbase=_spPageContextInfo.webServerRelativeUrl+“/_layouts/15/”;
$.getScript(scriptbase+“SP.Runtime.js”,函数(){
$.getScript(scriptbase+“SP.js”,函数(){
$.getScript(scriptbase+“SP.DocumentManagement.js”,createDocumentSet);
});
});
});
var文件;
函数createDocumentSet(){
//获取客户端上下文、web和库对象。
clientContext=new SP.clientContext.get_current();
oWeb=clientContext.get_web();
var oList=oWeb.get_lists().getByTitle(“遗留_DSS_文件”);
clientContext.load(oList);
//获取库的根文件夹
oLibraryFolder=oList.get_rootFolder();
var documentSetFolder=“/sites/dcsa/ep/Legacy_DSS/Memos”;
//使用CAML查询获取文档集文件
var camlQuery=SP.camlQuery.createAllItemsQuery();
camlQuery.set_folderServerRelativeUrl(documentSetFolder);
docSetFiles=oList.getItems(camlQuery);
//加载客户端上下文并执行批处理
load(docSetFiles,'Include(File)');
executeQueryAsync(QuerySuccess,QueryFailure);
}
函数QuerySuccess(){
var csv='文档名称、URL名称、创建日期、修改日期\n';
var docSetFilesEnumerator=docSetFiles.getEnumerator();
while(docSetFilesEnumerator.moveNext()){
var oDoc=docSetFilesEnumerator.get_current().get_file();
csv+=oDoc.get_name()+','+'https://intelshare.intelink.gov“+oDoc.get_serverRelativeUrl()+”、“+oDoc.get_timeCreated()+”、“+oDoc.get_timeLastModified();//如果有更多克隆
csv+=“\n”;
var link=document.getElementById(“prvMinutes1”);
link.innerHTML+='

  • ; } } 函数QueryFailure(){ console.log('请求失败-'+args.get_message()); } 条例(); }///备忘录列结束函数 //右列列表 函数regColumn(){ jQuery(文档).ready(函数(){ var scriptbase=_spPageContextInfo.webServerRelativeUrl+“/_layouts/15/”; $.getScript(scriptbase+“SP.Runtime.js”,函数(){ $.getScript(scriptbase+“SP.js”,函数(){ $.getScript(scriptbase+“SP.DocumentManagement.js”,createDocumentSet); }); }); }); var文件; 函数createDocumentSet(){ //获取客户端上下文、web和库对象。 clientContext=new SP.clientContext.get_current(); oWeb=clientContext.get_web(); var oList=oWeb.get_lists().getByTitle(“遗留_DSS_文件”); clientContext.load(oList); //获取库的根文件夹 oLibraryFolder=oList.get_rootFolder(); var documentSetFolder=“/sites/dcsa/ep/Legacy_DSS/Regulations”; //使用CAML查询获取文档集文件 var camlQuery=SP.camlQuery.createAllItemsQuery(); camlQuery.set_folderServerRelativeUrl(documentSetFolder); docSetFiles=oList.getItems(camlQuery); //加载客户端上下文并执行批处理 load(docSetFiles,'Include(File)'); executeQueryAsync(QuerySuccess,QueryFailure); } 函数QuerySuccess(){ var csv='文档名称、URL名称、创建日期、修改日期\n'; var docSetFilesEnumerator=docSetFiles.getEnumerator(); while(docSetFilesEnumerator.moveNext()){ var oDoc2=docSetFilesEnumerator.get_current().get_file(); csv+=oDoc2.get_name()+','+'https://intelshare.intelink.gov“+oDoc2.get_serverRelativeUrl()+”、“+oDoc2.get_timeCreated()+”、“+oDoc2.get_timeLastModified();//如果有更多克隆 csv+=“\n”; var link2=document.getElementById(“prvMinutes2”); link2.innerHTML+='

  • ; } } 函数QueryFailure(){ console.log('请求失败-'+args.get_message()); } }///结束规则列功能
  • 我建议您使用RESTAPI来实现它。以下代码供您参考

    <script src="https://code.jquery.com/jquery-1.12.4.min.js" type="text/javascript"></script>
    <script type="text/javascript">
    $(function(){
        getFilesFromFolder("/sites/dcsa/ep/Legacy_DSS/Memos").done(function(data){
            $.each(data.d.results,function(i,item){
                $("#prvMinutes1").append('<li class="linkData" style="padding-left: 10px; padding-right: 10px;"><a href="' + 'https://intelshare.intelink.gov' + item.ServerRelativeUrl + '" target="_blank">' + item.Name.replace(/\.[^/.]+$/, "") + '</a></li><br>');
            });
        });
        getFilesFromFolder("/sites/dcsa/ep/Legacy_DSS/Regulations").done(function(data){
            $.each(data.d.results,function(i,item){
                $("#prvMinutes2").append('<li class="linkData" style="padding-left: 10px; padding-right: 10px;"><a href="' + 'https://intelshare.intelink.gov' + item.ServerRelativeUrl + '" target="_blank">' + item.Name.replace(/\.[^/.]+$/, "") + '</a></li><br>');
            });
        });
    })
    function getFilesFromFolder(serverRelativeUrlToFolder){
        return $.ajax({
            url: _spPageContextInfo.webAbsoluteUrl + "/_api/web/GetFolderByServerRelativeUrl('"+serverRelativeUrlToFolder+"')/files",
            method: "GET",
            async:false,
            headers: { "Accept": "application/json; odata=verbose" }
        });
    }
    </script>
    
    <div>
    <ul id="prvMinutes1"></ul>
    <ul id="prvMinutes2"></ul>
    </div>
    
    
    $(函数(){
    getFilesFromFolder(“/sites/dcsa/ep/Legacy_DSS/Memos”)。完成(函数(数据){
    $每个(数据、结果、功能(i、项目){
    $(“#prvMinutes1”).append(”

  • ”); }); }); getFilesFromFolder(“/sites/dcsa/ep/Legacy_DSS/Regulations”)。完成(函数(数据){ $每个(数据、结果、功能(i、项目){ $(“#prvMinutes2”).append(”

  • ”); }); }); }) 函数getFilesFromFolder(serverRelativeUrlToFolder){ 返回$.ajax({ url:_spPageContextInfo.webAbsoluteUrl+“/_api/web/GetFolderByServerRelativeUrl(“+serverRelativeUrlToFolder+”)/files”, 方法:“获取”, async:false, 标题:{“接受”:“应用程序/json;odata=verbose”} }); }
        参考
        <script src="https://code.jquery.com/jquery-1.12.4.min.js" type="text/javascript"></script>
        <script type="text/javascript">
        $(function(){
            getFilesFromFolder("/sites/dcsa/ep/Legacy_DSS/Memos").done(function(data){
                $.each(data.d.results,function(i,item){
                    $("#prvMinutes1").append('<li class="linkData" style="padding-left: 10px; padding-right: 10px;"><a href="' + 'https://intelshare.intelink.gov' + item.ServerRelativeUrl + '" target="_blank">' + item.Name.replace(/\.[^/.]+$/, "") + '</a></li><br>');
                });
            });
            getFilesFromFolder("/sites/dcsa/ep/Legacy_DSS/Regulations").done(function(data){
                $.each(data.d.results,function(i,item){
                    $("#prvMinutes2").append('<li class="linkData" style="padding-left: 10px; padding-right: 10px;"><a href="' + 'https://intelshare.intelink.gov' + item.ServerRelativeUrl + '" target="_blank">' + item.Name.replace(/\.[^/.]+$/, "") + '</a></li><br>');
                });
            });
        })
        function getFilesFromFolder(serverRelativeUrlToFolder){
            return $.ajax({
                url: _spPageContextInfo.webAbsoluteUrl + "/_api/web/GetFolderByServerRelativeUrl('"+serverRelativeUrlToFolder+"')/files",
                method: "GET",
                async:false,
                headers: { "Accept": "application/json; odata=verbose" }
            });
        }
        </script>
        
        <div>
        <ul id="prvMinutes1"></ul>
        <ul id="prvMinutes2"></ul>
        </div>