自定义“新建项目或编辑此列表”按钮

时间:2019-11-20 16:09:11

标签: javascript sharepoint

我需要创建一个自定义“新建项目或编辑此列表”按钮以快速查看SP列表。详细信息如下:

  • 我需要阻止用户创建新项目。我只需要“编辑此列表”和“停止编辑此列表”功能。
  • 我可以通过CSS轻松隐藏“新项目”按钮,但是“或”文本仍然保留。
  • 理想情况下,我正在寻找完全相同的功能(这意味着“停止编辑此列表”功能只会在打开并激活网格后才会出现)。

有关实现此目标的自定义HTML按钮的任何想法将非常有帮助。

2 个答案:

答案 0 :(得分:0)

将以下代码添加到列表视图页面的脚本编辑器Web部件中。

<script src="https://code.jquery.com/jquery-1.12.4.min.js" type="text/javascript"></script>
<script type="text/javascript">
SP.SOD.executeFunc("clienttemplates.js", "SPClientTemplates", function() {
    SPClientTemplates.TemplateManager.RegisterTemplateOverrides({
        OnPostRender: function(ctx) {
            if($("a[title^='Edit this list using Quick Edit mode']").length>0){
                var editBtnHtml=$("a[title^='Edit this list using Quick Edit mode']")[0].outerHTML+" this list";
                $(".ms-list-addnew").html(editBtnHtml); 
            }                   
        }
    });
});
</script> 

enter image description here

答案 1 :(得分:0)

作为参考,这是我用来生成HTML按钮和JS函数的代码。效果很好。

<!DOCTYPE html>
<html>
<body>
<table>
<tr>
<td>
<button id="quickedit" onclick="QuickEditFunction();return false;"><h4 id="attestheader">Edit Data</h4></button>

<script>
function QuickEditFunction()
{
InitGridFromView(window['WPQ4SchemaData'].View);
}
</script>
</td>


<td>
<body>
<button id="quickedit" onclick="ExitGridFunction(); return false;"><h4 id="attestheader">Save Changes</h4></button>

<script>
function ExitGridFunction() 
{
ExitGrid(window['WPQ4SchemaData'].View);
}  
</script>
 </td>
</tr>
</table>
</body>
</html>

请注意,必须更改WPQ4SchemaData参考以反映列表Web部件的数字ID。