Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/429.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_Sharepoint 2013 - Fatal编程技术网

Javascript 用于折叠SharePoint任务列表的改进脚本

Javascript 用于折叠SharePoint任务列表的改进脚本,javascript,sharepoint,sharepoint-2013,Javascript,Sharepoint,Sharepoint 2013,我有一个与MS Project文件同步的SharePoint 2013任务列表。默认情况下,将展开包含所有任务、子任务和子任务的整个任务列表。这使得当列表中有几百或几千个任务时,它几乎毫无用处。找到以下代码片段后,我能够使任务列表折叠: <script type="text/javascript"> jQuery(document).ready(function($) { (function($){ function doCollapseTaskList() { $(

我有一个与MS Project文件同步的SharePoint 2013任务列表。默认情况下,将展开包含所有任务、子任务和子任务的整个任务列表。这使得当列表中有几百或几千个任务时,它几乎毫无用处。找到以下代码片段后,我能够使任务列表折叠:

<script type="text/javascript">
 jQuery(document).ready(function($) { 
 (function($){
     function doCollapseTaskList() {
$(".ms-commentcollapse-iconouter > img").each(function(){
$(this).click();
});
}
$(function() {
  SP.SOD.executeOrDelayUntilScriptLoaded(function () {
if (typeof asyncDeltaManager != "undefined")
             asyncDeltaManager.add_endRequest(doCollapseTaskList);
           else doCollapseTaskList();
   },'SP.js');
     });

     })(jQuery); 
   });
</script>

jQuery(文档).ready(函数($){
(函数($){
函数doCollapseTaskList(){
$(“.ms.icooter>img”).each(函数(){
$(此选项)。单击();
});
}
$(函数(){
SP.SOD.executeOrderLayintlScript加载(函数(){
if(asyncDeltaManager的类型!=“未定义”)
asyncDeltaManager.add_endRequest(doCollapseTaskList);
else doCollapseTaskList();
},'SP.js');
});
})(jQuery);
});

但每当我单击任务旁边的小复选框时,列表就会刷新,这一次,它会再次展开。我不明白为什么脚本在重新引用后不折叠列表。如何使脚本在刷新后运行?或者,是否有任何方法可以防止在检查checbox后进行刷新(当然,仍保存该检查)。

以下是我的测试结果[使用Office 365/SharePoint Online]。使用按钮和/或以下浏览器之一(如果可能)尝试复选框,将此脚本添加到内容编辑器web部件。我似乎在运行这个程序时遇到了问题,但一旦它运行起来,我就对照我安装的所有四种浏览器进行了检查

MS Edge 40.15063.674.0 -不会自动运行脚本。我添加了一个按钮,它将折叠整个列表,然后展开整个列表。我不停地按按钮,它不停地扩展/折叠列表

MS IE 11.1563.15063.0 -在列表已折叠的情况下运行(它可以工作!)。按下按钮什么也不做

FireFox Quantum 64位(无版本) -在列表已折叠的情况下运行(它可以工作!)。按下按钮可展开列表。再次按该键将选择列表中的最后一个折叠/展开项

谷歌Chrome 72.0.3626.109 -不会自动运行脚本。按下按钮可折叠列表。再次按下按钮没有任何作用

没有安装或测试其他浏览器

添加了按钮标记:

<input type="button" value="Collapse Task List" onclick="doCollapseTaskList()">


该脚本似乎是为IE编写的。似乎有人需要修改它以支持多个浏览器。

如果这是
UpdatePanel
请检查此项:。如果这是
js grid
检查:感谢您的详细回复,但我已经完全放弃了SharePoint任务列表。