none
SharePoint 2007 : webpart pour insérer du code javascript/jquery RRS feed

  • Question

  • Bonjour,

    J'aimerais savoir si quelqu'un connait une webpart qui permet d'insérer du script client de type Javascript ou Jquery , au-dessus d'une webpart de requête de contenu qui affiche les fichiers d'une de mes bibliothèques de documents.

    En fait, les noms de mes fichiers sont bizarres, par ex. j'ai 1234;#monfichier.txt

    Je cherche en fait à modifier, dans une page web, la chaine de caractères insérée dans une DIV (via du javascript/jquery) ci-dessus pour n'extraire que le nom de fichier qui m'intéresse et dégager le 1234;# en trop.

    Au départ, je ne sais pas comment faire dans la webpart de requête de contenu pour afficher seulement le nom du fichier sans l'ID et les séparateurs devant. La colonne choisie pour effectuer un groupby est la colonne 'système' Nom , sauf qu'elle buggé on dirait, car elle n'affiche pas le nom du fichier correctement ! Ce problème d'ailleurs a été évoqué dans un de mes tout premiers posts sur ce forum sauf erreur de ma part. 

    Les autres colonnes disponibles dans la liste et pour le type de contenu utilisé dans la bibliothèque ciblée par la requête ne me sont d'aucun secours. L'idée de créer une nouvelle colonne et de la rendre visible dans la liste des colonnes de filtres m'a traversé l'esprit sauf que pour le client pour lequel je travaille, cela implique qu'il mette à jour plus de 6000 documents rien que pour afficher un simple 'nom de fichier'. Ce qui ne le conviendra pas forcément.

    Merci de votre aide  :-)

    Okavango93

    lundi 8 novembre 2010 17:24

Réponses

  • Bonjour,

    Une autre manière de faire exactement la même chose aurait été de modifier le fichier XSL correspondant à la CQWP (Content Query WebPart).

    Voici quelques liens à ce sujet :

    http://msdn.microsoft.com/en-us/library/bb447557.aspx

    http://blogs.developpeur.org/pierre/archive/2010/10/29/sharepoint-2010-personnalisation-du-content-query-webpart-comment-afficher-correctement-les-derniers-documents.aspx

    http://blogs.developpeur.org/phil/archive/2007/10/12/sharepoint-2007-customization-de-la-content-query-web-part.aspx

    http://blogs.codes-sources.com/phil/archive/2007/10/29/sharepoint-2007-customization-de-la-content-query-web-part-et-deploiement.aspx

    L'utilisation du JS est correcte mais peut être moins dans l'optique SharePoint.


    Philippe Sentenac - MVP SharePoint - http://blogs.developpeur.org/phil
    Merci de valider les réponses qui correspondent à votre problème afin qu'il apparaisse comme résolu.
    mardi 9 novembre 2010 07:07
    Modérateur
  • Ci-dessous une description de la solution à mon problème. J'ai pu me débrouiller comme un grand finalement !

    Imaginons que j'ai une div comme suit :

    <div id="ms-text">1234;#nomdefichier.aspx</div>
    

    Dans un CEWP (Content Editor WebPart) on peut insérer ce code suivant qui se chargera de modifier le texte à l'affichage sans l'altérer :

    <script type="text/javascript" src="/_layouts/jquery-1.4.3.js"></script> 
    <script type="text/javascript"> 
    
    $(document).ready(function() 
    {
      var innerHTML = $("#ms-text").text();  
      var indexOfSharp = innerHTML.indexOf("#");
      var lengthOfString = innerHTML.length;
      
      if(indexOfSharp > 0 && lengthOfString > 0)
      {
       $("#ms-text").html(innerHTML.substring(indexOfSharp+1));
      }
    });
    </script> 
    

    Bien sûr, il faut penser à télécharger le fichier js permettant d'interpréter la syntaxe JQuery sinon ça ne marche pas.

    Pas mal non ?

    • Marqué comme réponse Rivo R lundi 8 novembre 2010 20:16
    lundi 8 novembre 2010 20:15

Toutes les réponses

  • Bonsoir,

    Finalement j'ai trouvé un moyen.
    On peut se servir de la webpart Content Editor Webpart.

    On peut insérer du code HTML dedans, donc à priori du script Javascript/JQuery.

    merci quand même d'avoir pris le temps de regarder. :-)

     

    Okavango93

     

    lundi 8 novembre 2010 19:33
  • Ci-dessous une description de la solution à mon problème. J'ai pu me débrouiller comme un grand finalement !

    Imaginons que j'ai une div comme suit :

    <div id="ms-text">1234;#nomdefichier.aspx</div>
    

    Dans un CEWP (Content Editor WebPart) on peut insérer ce code suivant qui se chargera de modifier le texte à l'affichage sans l'altérer :

    <script type="text/javascript" src="/_layouts/jquery-1.4.3.js"></script> 
    <script type="text/javascript"> 
    
    $(document).ready(function() 
    {
      var innerHTML = $("#ms-text").text();  
      var indexOfSharp = innerHTML.indexOf("#");
      var lengthOfString = innerHTML.length;
      
      if(indexOfSharp > 0 && lengthOfString > 0)
      {
       $("#ms-text").html(innerHTML.substring(indexOfSharp+1));
      }
    });
    </script> 
    

    Bien sûr, il faut penser à télécharger le fichier js permettant d'interpréter la syntaxe JQuery sinon ça ne marche pas.

    Pas mal non ?

    • Marqué comme réponse Rivo R lundi 8 novembre 2010 20:16
    lundi 8 novembre 2010 20:15
  • Bonjour,

    Une autre manière de faire exactement la même chose aurait été de modifier le fichier XSL correspondant à la CQWP (Content Query WebPart).

    Voici quelques liens à ce sujet :

    http://msdn.microsoft.com/en-us/library/bb447557.aspx

    http://blogs.developpeur.org/pierre/archive/2010/10/29/sharepoint-2010-personnalisation-du-content-query-webpart-comment-afficher-correctement-les-derniers-documents.aspx

    http://blogs.developpeur.org/phil/archive/2007/10/12/sharepoint-2007-customization-de-la-content-query-web-part.aspx

    http://blogs.codes-sources.com/phil/archive/2007/10/29/sharepoint-2007-customization-de-la-content-query-web-part-et-deploiement.aspx

    L'utilisation du JS est correcte mais peut être moins dans l'optique SharePoint.


    Philippe Sentenac - MVP SharePoint - http://blogs.developpeur.org/phil
    Merci de valider les réponses qui correspondent à votre problème afin qu'il apparaisse comme résolu.
    mardi 9 novembre 2010 07:07
    Modérateur