Comment décocher "Ajouter une nouvelle version aux fichiers existants" Dans la boîte de dialogue "Ajouter un document"

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

  •  29-09-2020
  •  | 
  •  

Question

Je travaille sur une collection de sites de publication à l'aide du modèle Enterprise Wiki. Actuellement, lorsque les utilisateurs souhaitent insérer une image à l'intérieur de l'éditeur de texte riche, ils seront invités avec les éléments suivants: -

Entrez la description de l

Et si l'utilisateur insère une image qui existe déjà, elle remplacera la version existante, ce qui pourrait entraîner l'affichage de la photo à l'intérieur d'une page wiki qu'elle n'appartient pas !!

Voilà donc un moyen de faire l'un des éléments suivants: -

  • Donnez à la nouvelle image un nom unique généré automatiquement?
  • à décochez la section "Ajouter comme une nouvelle version aux fichiers existants" par défaut?
  • ou pour toujours empêcher le remplacement des images, car cela peut causer de nombreux conflits !!

J'ai essayé de mettre à jour le téléchargement.aspx, en modifiant le

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

Pour être vérifié="False" au lieu de coché="vrai" ,, mais cela n'a changé aucune chose? Quelqu'un peut-il aditer à ce sujet s'il vous plaît?

Quelqu'un peut-il conseiller? S'il vous plaît?

Modifier J'ai ajouté ce qui suit à mon upload.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);
                    }
                });
      });

Mais il n'a pas corrigé la case à cocher, pouvez-vous vous conseiller?

Était-ce utile?

La solution

Je l'ai fait précédemment, mais c'était pour SharePoint 2010 (voir mon blog post ).

Le code que j'ai utilisé est celui ci-dessous.Il doit être inséré dans votre maître-chef, juste avant la balise :

<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>

C'est pur JavaScript, donc pas besoin de jQuery.Et il doit être inséré dans le masterpage, donc pas besoin d'avoir un accès de serveur.

Autres conseils

Je pense que la faute de la chekbox résoudra tout votre problème. Comme si cette case à cocher est décochée, le téléchargement des fichiers dupliqués de téléchargement des utilisateurs obtiendra une erreur sur le même nom du fichier. Et pour décocher la chechbox, voir ci-dessous des commentaires.

Écrire un JavaScript directement sur le fichier upload.aspx présent dans la mise en page / 15 dossier, mais cela n'est pas recommandé.

Donc, dans ce cas, vous pouvez écrire une fonctionnalité personnalisée ayant un contrôle de délégué "supplémentairePagehead" pour injecter JavaScript afin de créer une case à cocher "non cochée".

>         <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>

Pour votre référence, vous pouvez voir ci-dessous des liens: -

link1

link2 < / a>

Essayez ce code: Insérez JavaScript à l'aide de la fonction de déléguée via une fonctionnalité. N'appliquez manuellement JavaScript dans la page de téléchargement directement car cela conduira à beaucoup de problème de compilation. Suivez link2

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');

Licencié sous: CC-BY-SA avec attribution
Non affilié à sharepoint.stackexchange
scroll top