我希望隐藏资产选择器对话框中的“上传”按钮,并且我知道资产选择器对话框在 SharePoint 中使用 Dialog.master。是否可以附加一些自定义 jQuery/Javascript 脚本,该脚本将隐藏资产选择器对话框上的上传按钮

笔记:我不想修改 OOTB Dialog.master 页面

资源选择器对话框在布局文件夹中的位置是 test/_layouts/AssetPortalBrowser.aspx

更新:我有隐藏上传按钮的脚本,但我只想知道如何将其放入 Dialog.Master 中?问题是 Dialog.master 中目前不存在可以用来插入脚本的委托控件。

有帮助吗?

解决方案

您是否尝试过使用 Location="ScriptLink" 的自定义操作来解决脚本问题。它会在所有网站页面甚至对话框上加载 JavaScript。看看我已经解决了以下问题:

您需要做的就是相应地更改路径,当然将这些自定义操作放入功能(网站集/Web)中:)

  <CustomAction Location="ScriptLink" ScriptSrc="~SiteCollection/_layouts/js/jquery-1.5.2.js" Sequence="105" />

  <CustomAction
 Location="ScriptLink"
 ScriptBlock="function loadImageUploaderScript() {       
                      var head = document.getElementsByTagName('head')[0];          
                      var script = document.createElement('script');          
                      script.type = 'text/javascript'; 
                      var url = window.location.toString();
                      url = typeof(L_Menu_BaseUrl) != 'undefined' ? L_Menu_BaseUrl : url.substr(0, url.indexOf('/_layouts')); 

                      script.src = url + '/_layouts/js/DefaultUploadOff.js';                          
                      head.appendChild(script);                      
            }   
 _spBodyOnLoadFunctionNames.push('loadImageUploaderScript()');" Sequence="120">

DefaultUploadOff.js 文件将如下所示:

jQuery(document).ready(function () {
    jQuery("#SiteMgr_Upload_ButtonTable").hide();

});

如果您的 jQuery 不起作用,那么您可以在 DefaultUploadoff.js 中使用以下 JavaScript 代码

var inputs = document.getElementsByTagName("table");
var i = 0;
for (i = 0; i < inputs.length; i++) {
var input = inputs[i];
if (input.id.indexOf('SiteMgr_Upload_ButtonTable') > -1)     
    document.getElementById('SiteMgr_Upload_ButtonTable').style.visibility = "hidden";
}
许可以下: CC-BY-SA归因
scroll top