Как снять флажок «Добавить в качестве новой версии к существующим файлам» в диалоговом окне «Добавить документ»

sharepoint.stackexchange https://sharepoint.stackexchange.com/questions/116122

  •  29-09-2020
  •  | 
  •  

Вопрос

Я работаю над сборной сайта с использованием шаблона предприятия Wiki. В настоящее время, когда пользователи хотят вставить изображение внутри богатого текстового редактора, они будут предложены следующим образом: -

Введите описание изображения здесь

И если пользователь вставил изображение, которое уже существует, то он заменит существующий, что может привести к отображению изображения внутри страницы вики, к которой она не принадлежит !!

Так есть способ сделать одно из следующих действий: -

    .
  • Дайте новую картинку уникальное автоматическое созданное имя?
  • не проверьте «Добавить в новую версию к существующим файлам» по умолчанию?
  • или всегда предотвращать замену изображений, так как это может вызвать многие конфликты !!

Я попробовал обновлять upload.aspx, изменив

 <asp:CheckBox id="OverwriteSingle" Checked="true" Text="<%$Resources:wss,upload_document_overwrite_file%>" runat="server" />
.

проверить="false" вместо проверки="True", но это не изменило ни одной вещи? Может кто-нибудь привыкнут этому, пожалуйста?

Может кто-нибудь совет? Пожалуйста?

Редактировать Я добавил следующее на мою загрузку.aspx: -

<SharePoint:ScriptBlock runat="server">
          $(document).ready(function() {
                _spBodyOnLoadFunctionNames.push('DefaultUploadOverwriteOff');
                $(document).ready(function () {
                    if (document.title == "Upload Document") {
                        $("input[id$='OverwriteSingle']").attr("checked", false);
                        $("input[id$='OverwriteMultiple']").attr("checked", false);
                    }
     if (document.title == "Upload Image") {
                        $("input[id$='OverwriteSingle']").attr("checked", false);
                        $("input[id$='OverwriteMultiple']").attr("checked", false);
                    }
                });
      });
.

Но он не снимал флажок, вы можете совет?

Это было полезно?

Решение

Я сделал это раньше, но это было для SharePoint 2010 (см. Мой блог Post ).

Используемый я использовал код ниже.Он должен быть вставлен в вашу Masterpage, непосредственно перед тегом :

<script type="text/javascript">
function DefaultUploadOverwriteOff() {
  if (document.title.indexOf("Upload Document") > -1) {
    var input=document.querySelectorAll("input");
    for (var i=input.length; i--;) {
      if (input[i].id.search(/\_OverwriteSingle$|\_OverwriteMultiple$/) > -1) input[i].checked=false
    }
  }
}
_spBodyOnLoadFunctionNames.push('DefaultUploadOverwriteOff');
</script>
</head>
.

Это чистый JavaScript, поэтому нет необходимости в jQuery.И он должен быть вставлен в MasterPage, поэтому нет необходимости иметь доступ к серверу.

Другие советы

Я думаю, что удерживая чекбокс решат всю вашу проблему. Как будто этот флажок не отмечен, то пользователь загрузка дубликата файла получит ошибку о том же имени файла. И для того, чтобы снять чечковки, см. Ниже подсчета.

Написание JavaScript непосредственно на файле upload.aspx, присутствующий в макетах / 15 папке, но это не рекомендуется.

Так что в этом случае вы можете написать пользовательскую функцию, имеющую управление делегатом «Дополнительные участки», чтобы ввести JavaScript, чтобы сделать флажок «не проверять».

>         <script>
>     _spBodyOnLoadFunctionNames.push('DefaultUploadOverwriteOff');
>     $(document).ready(function() {
>         if (document.title == "Upload Document") {
>             $("input[id$='OverwriteSingle']").attr("checked",false);
>             $("input[id$='OverwriteMultiple']").attr("checked",false);
>         }});
>       </script>
.

Для вашей ссылки вы можете увидеть ссылки ниже: -

link1

link2 < / a>

Попробуйте этот код: Вставьте JavaScript с помощью делегата управления через функцию. Не используйте JavaScript на странице загрузки непосредственно, так как это приведет к большому количеству компиляции. Следуйте ссылку2

function DefaultUploadOverwriteOff()
{
   var inputs = document.getElementsByTagName('input');
   var i=0;
   for (i=0;i<inputs.length;i++)
   {
      var input = inputs[i];
      if (input.type == 'checkbox' && (input.id.indexOf('OverwriteSingle')>-1 || input.id.indexOf('OverwriteMultiple')>-1))
        input.checked = false;
   }
}
_spBodyOnLoadFunctionNames.push('DefaultUploadOverwriteOff');
.

Лицензировано под: CC-BY-SA с атрибуция
Не связан с sharepoint.stackexchange
scroll top