none
[SPS2013][FR] Javascript et SharePoint - Colorer une liste en fonction d'une valeur. RRS feed

  • Question

  • Bonjour,

    je vous explique mon problème, j'aimerai intégrer du JavaScript dans SharePoint.

    Voici le code (il permet de colorer un ligne de ma liste en fonction d'une valeur):

    <script language="javascript" type="text/javascript">
    var x = document.getElementsByTagName("TD")
    var i=0;
    for (i=0;i<x.length;i++)
    {
    if (x[i].className=="ms-vb2")
    {
    if (x[i].innerHTML=="Completed")
    {
    x[i].parentNode.style.backgroundColor='lightgreen';
    }
    if (x[i].innerHTML=="Not Completed")
    {
    x[i].parentNode.style.backgroundColor='red';
    }
    }
    } </script>

    Je l'ai d'abord mis dans un composant Web Part de type "Éditeur de script".

    Cela ne fonctionne pas, j'ai donc essayer de le lié à mon webpart en modifiant ses

    propriété et en indiquant le chemin de mon fichier .js mais de même,

    cela ne marche pas.

    Je ne pense pas que cela vienne de mon code.

    Si quelqu'un à une piste ou une autre méthode.

    Merci d'avance

    EG

    jeudi 13 août 2015 07:37

Réponses

  • Bonjour,

    La technique que vous utilisez n'est pas mauvaise bien qu'elle n'est pas optimale.

    En recherchant tous les TD vous parcourez un très grand nombre d'éléments inutilement.

    Je vous recommande d'utiliser le CSR afin de cibler uniquement le contenu de votre liste.

    Voici une méthode :

    http://sharepoint.stackexchange.com/questions/132857/color-code-item-row-based-on-column-value-in-sharepoint-foundation-2013

    http://www.idubbs.com/blog/2014/js-link-highlighting-a-row-with-csr/

    Merci

    Samuel Levesque | http://sharepointerie.com | SVP utiliser le bouton "Marquer comme réponse" sur les réponses qui vous aide car cela permet aux personnes qui peuvent rencontrer le même problème que vous, de retrouver rapidement quelle est la réponse qui a résolu leur problème. De plus, cela encourage aussi la personne qui a répondu à votre question, à répondre aux suivantes...

    • Marqué comme réponse EGuidez lundi 17 août 2015 08:15
    lundi 17 août 2015 03:01

Toutes les réponses

  • Bonjour,

    La technique que vous utilisez n'est pas mauvaise bien qu'elle n'est pas optimale.

    En recherchant tous les TD vous parcourez un très grand nombre d'éléments inutilement.

    Je vous recommande d'utiliser le CSR afin de cibler uniquement le contenu de votre liste.

    Voici une méthode :

    http://sharepoint.stackexchange.com/questions/132857/color-code-item-row-based-on-column-value-in-sharepoint-foundation-2013

    http://www.idubbs.com/blog/2014/js-link-highlighting-a-row-with-csr/

    Merci

    Samuel Levesque | http://sharepointerie.com | SVP utiliser le bouton "Marquer comme réponse" sur les réponses qui vous aide car cela permet aux personnes qui peuvent rencontrer le même problème que vous, de retrouver rapidement quelle est la réponse qui a résolu leur problème. De plus, cela encourage aussi la personne qui a répondu à votre question, à répondre aux suivantes...

    • Marqué comme réponse EGuidez lundi 17 août 2015 08:15
    lundi 17 août 2015 03:01
  • Merci pour votre réponse,

    Je vais essayé ça et je reviendrais vers vous si j'ai le moindre soucis.

    EDIT:

    Cela fonctionne correctement,

    Merci beaucoup !

    • Modifié EGuidez lundi 17 août 2015 08:26 Test OK
    lundi 17 août 2015 08:15
  • J'arrive après la guerre mais j'avais quand même envie de le dire : très bonne réponse de Samuel ! le CSR est LA solution ! :)

    Blog Sharepoint : www.paslatek.net Twitter : @LimozinLionel

    lundi 24 août 2015 20:12