IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

JavaScript Discussion :

basculer la premiere colonne de tableau en dernier et affichage rtl


Sujet :

JavaScript

  1. #1
    Membre très actif Avatar de yacine.dev
    Inscrit en
    Octobre 2009
    Messages
    177
    Détails du profil
    Informations personnelles :
    Âge : 37

    Informations forums :
    Inscription : Octobre 2009
    Messages : 177
    Par défaut basculer la premiere colonne de tableau en dernier et affichage rtl
    bonjour



    je cherche a inverser les collone d'un tableau
    exemple

    (tableau)les collones

    col1 col2 col3
    nom -prenon-date de naissance

    je veux qu le tableau change le classement de ces collonnes avec une fonction javascript (sous une condition :exemple lutilsateur utilise la langue arabe) ou avec un attribut css appliqué sur un tableau qui rend le tableau lisible du coté droit.

    comme ça
    le classement collones est inversé
    col3 col2 col1
    date de naissance - prenon - nom (lisible du coté droit)


    ce probleme est survenu quand j'esseye d'utiliser la meme page html de français ou englai pour l'arabe car l'arabe se lit du coté droit a gauche


    merci de lire mon message
    j'attends votre reponse

  2. #2
    Rédacteur/Modérateur

    Avatar de SpaceFrog
    Homme Profil pro
    Développeur Web Php Mysql Html Javascript CSS Apache - Intégrateur - Bidouilleur SharePoint
    Inscrit en
    Mars 2002
    Messages
    39 658
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 75
    Localisation : Royaume-Uni

    Informations professionnelles :
    Activité : Développeur Web Php Mysql Html Javascript CSS Apache - Intégrateur - Bidouilleur SharePoint
    Secteur : Industrie

    Informations forums :
    Inscription : Mars 2002
    Messages : 39 658
    Billets dans le blog
    1
    Par défaut
    il suffit de faire un appendChild du premier td dans le tr pour chaque tr
    Ma page Developpez - Mon Blog Developpez
    Président du CCMPTP (Comité Contre le Mot "Problème" dans les Titres de Posts)
    Deux règles du succès: 1) Ne communiquez jamais à quelqu'un tout votre savoir...
    Votre post est résolu ? Alors n'oubliez pas le Tag

    Venez sur le Chat de Développez !

  3. #3
    Membre très actif Avatar de yacine.dev
    Inscrit en
    Octobre 2009
    Messages
    177
    Détails du profil
    Informations personnelles :
    Âge : 37

    Informations forums :
    Inscription : Octobre 2009
    Messages : 177
    Par défaut inverser les colonnes
    inverser les colonnes de tableau le premier devien ledernier et le deuxieme devien l'avant dernier et ainsi de suite cest simple je lai trouvé



    por ta reponse tu n'a pas compris ce n'est pa que le premier collone mais tous les colonnes de tableau


    il suffit d'appliquer l'attribut css2 direction sur le tableau


    <table style="direction:rtl">
    collne1 va etre dessiner adroite pas a gauche
    </table>
    direction:rtl c'est a dire right to left

    par defaut cest direction:ltr left to right

    c'est pour supporter la langues qui se lit de droite a gauche ex:arabe



    merçi

  4. #4
    Rédacteur/Modérateur

    Avatar de SpaceFrog
    Homme Profil pro
    Développeur Web Php Mysql Html Javascript CSS Apache - Intégrateur - Bidouilleur SharePoint
    Inscrit en
    Mars 2002
    Messages
    39 658
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 75
    Localisation : Royaume-Uni

    Informations professionnelles :
    Activité : Développeur Web Php Mysql Html Javascript CSS Apache - Intégrateur - Bidouilleur SharePoint
    Secteur : Industrie

    Informations forums :
    Inscription : Mars 2002
    Messages : 39 658
    Billets dans le blog
    1
    Par défaut
    Je pense que le ltr sur la page influe aussi sur l'ordre des tds dasn les tr ...

    sinon il faudra faire un test si on est en ltr ou rtl et faire un insertBefore
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    59
    60
    61
    62
    63
    64
    65
     
     <html>
    <head>
    <meta http-equiv="Content-Type" content="text/html; charset=windows-1252">
     
    <title>Nouvelle page 1</title>
    <script type='text/javascript'>
    /***************************
    * Speed Table By SpaceFrog *
    **************************/
     
    function BuildTable(DestObj,NrLines,NbrCells){
    var BaliseTable=document.createElement('table');
    BaliseTable.id="tableau"
    var BaliseTbody=document.createElement('tbody');
     
    for(i=0;i<NrLines;i++){
     new AddLine(BaliseTbody,NrLines,NbrCells, i)
     }
     
    BaliseTable.appendChild(BaliseTbody);
    DestObj.appendChild(BaliseTable);
    document.close();
    }
     
    function AddLine(DestBody,NrLines,NbrCells, Contenu){
    var NewLine=document.createElement('tr');
    for(l=0;l<NbrCells;l++){
         new AddCells(NewLine,Contenu+'_'+l);
         }
    DestBody.appendChild(NewLine)      
     
    }
     
    function AddCells(DestLine,contenu){
    var newCell=document.createElement('td');
    newCell.style.border="solid 1px gray";
    newCell.appendChild(document.createTextNode(contenu));
    DestLine.appendChild(newCell);
    }
     
     
    function swaptd(){ 
    var tabtrs=document.getElementById('tableau').getElementsByTagName('tr');
    var i=0;
    while (tabtrs[i++]){
     tabtrs[i-1].appendChild(tabtrs[i-1].getElementsByTagName('td')[0])
     i++
     }
    }
     
    </script>
     
     
     
     
    </head>
     
    <body onload="BuildTable(document.body,20,6)">
    <input type="button" onclick="swaptd()" value="inverser" />
     
     
    </body>
     
    </html>
    Ma page Developpez - Mon Blog Developpez
    Président du CCMPTP (Comité Contre le Mot "Problème" dans les Titres de Posts)
    Deux règles du succès: 1) Ne communiquez jamais à quelqu'un tout votre savoir...
    Votre post est résolu ? Alors n'oubliez pas le Tag

    Venez sur le Chat de Développez !

  5. #5
    Membre très actif Avatar de yacine.dev
    Inscrit en
    Octobre 2009
    Messages
    177
    Détails du profil
    Informations personnelles :
    Âge : 37

    Informations forums :
    Inscription : Octobre 2009
    Messages : 177
    Par défaut
    oui mais moi je, sais bien que rlt ou ltr parceque l'utilisateur a deja choisi la laungue donc je mets tous le tableau a direction:rtl parceuqe je veux meme qu il s'applique sur les <td>sur presuqe toutes la page
    et merçi

  6. #6
    Rédacteur/Modérateur

    Avatar de SpaceFrog
    Homme Profil pro
    Développeur Web Php Mysql Html Javascript CSS Apache - Intégrateur - Bidouilleur SharePoint
    Inscrit en
    Mars 2002
    Messages
    39 658
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 75
    Localisation : Royaume-Uni

    Informations professionnelles :
    Activité : Développeur Web Php Mysql Html Javascript CSS Apache - Intégrateur - Bidouilleur SharePoint
    Secteur : Industrie

    Informations forums :
    Inscription : Mars 2002
    Messages : 39 658
    Billets dans le blog
    1
    Par défaut
    as tu tesé mon code ???

    je viens de le tester en rtl ...
    pour moi ça fonctionne ou alors je n'ai pas compris ce que tu veux ...

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    59
    60
    61
    62
    63
    64
    65
    66
     
     
    <html>
    <head>
    <meta http-equiv="Content-Type" content="text/html; charset=windows-1252">
     
    <title>Nouvelle page 1</title>
    <script type='text/javascript'>
    /***************************
    * Speed Table By SpaceFrog *
    **************************/
     
    function BuildTable(DestObj,NrLines,NbrCells){
    var BaliseTable=document.createElement('table');
    BaliseTable.id="tableau"
    var BaliseTbody=document.createElement('tbody');
     
    for(i=0;i<NrLines;i++){
     new AddLine(BaliseTbody,NrLines,NbrCells, i)
     }
     
    BaliseTable.appendChild(BaliseTbody);
    DestObj.appendChild(BaliseTable);
    document.close();
    }
     
    function AddLine(DestBody,NrLines,NbrCells, Contenu){
    var NewLine=document.createElement('tr');
    for(l=0;l<NbrCells;l++){
         new AddCells(NewLine,Contenu+'_'+l);
         }
    DestBody.appendChild(NewLine)      
     
    }
     
    function AddCells(DestLine,contenu){
    var newCell=document.createElement('td');
    newCell.style.border="solid 1px gray";
    newCell.appendChild(document.createTextNode(contenu));
    DestLine.appendChild(newCell);
    }
     
     
    function swaptd(){ 
    var tabtrs=document.getElementById('tableau').getElementsByTagName('tr');
    var i=0;
    while (tabtrs[i++]){
     tabtrs[i-1].appendChild(tabtrs[i-1].getElementsByTagName('td')[0])
     i++
     }
    }
     
    </script>
     
     
     
     
    </head>
     
    <body onload="BuildTable(document.body,20,6)" style="direction:rtl">
    <input type="button" onclick="swaptd()" value="inverser" />
     
     
    </body>
     
    </html>
    Ma page Developpez - Mon Blog Developpez
    Président du CCMPTP (Comité Contre le Mot "Problème" dans les Titres de Posts)
    Deux règles du succès: 1) Ne communiquez jamais à quelqu'un tout votre savoir...
    Votre post est résolu ? Alors n'oubliez pas le Tag

    Venez sur le Chat de Développez !

  7. #7
    Membre très actif Avatar de yacine.dev
    Inscrit en
    Octobre 2009
    Messages
    177
    Détails du profil
    Informations personnelles :
    Âge : 37

    Informations forums :
    Inscription : Octobre 2009
    Messages : 177
    Par défaut direction=rtl
    ce qui 'il me faut c'est d'appliquer a un tableau ce style direction="rlt" pour s'adapter avec la langue arabe

    <tableau style="direction:rtl"

    col3 col2 col1

    et mon probléme est résolu
    merçi

  8. #8
    Membre très actif Avatar de yacine.dev
    Inscrit en
    Octobre 2009
    Messages
    177
    Détails du profil
    Informations personnelles :
    Âge : 37

    Informations forums :
    Inscription : Octobre 2009
    Messages : 177
    Par défaut
    mais c'est quoi le premier collone c'est celui le premier adroite ou agauche
    ?

  9. #9
    Rédacteur/Modérateur

    Avatar de SpaceFrog
    Homme Profil pro
    Développeur Web Php Mysql Html Javascript CSS Apache - Intégrateur - Bidouilleur SharePoint
    Inscrit en
    Mars 2002
    Messages
    39 658
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 75
    Localisation : Royaume-Uni

    Informations professionnelles :
    Activité : Développeur Web Php Mysql Html Javascript CSS Apache - Intégrateur - Bidouilleur SharePoint
    Secteur : Industrie

    Informations forums :
    Inscription : Mars 2002
    Messages : 39 658
    Billets dans le blog
    1
    Par défaut
    tabtd[0]
    a gauche
    et là on fait un appendChild pour le mettre à la fin

    tabtd[tabtb.length]
    à droite
    et la on fait un insertBefore tabtd[0] pour le mettre au debut
    Ma page Developpez - Mon Blog Developpez
    Président du CCMPTP (Comité Contre le Mot "Problème" dans les Titres de Posts)
    Deux règles du succès: 1) Ne communiquez jamais à quelqu'un tout votre savoir...
    Votre post est résolu ? Alors n'oubliez pas le Tag

    Venez sur le Chat de Développez !

  10. #10
    Membre très actif Avatar de yacine.dev
    Inscrit en
    Octobre 2009
    Messages
    177
    Détails du profil
    Informations personnelles :
    Âge : 37

    Informations forums :
    Inscription : Octobre 2009
    Messages : 177
    Par défaut
    Citation Envoyé par SpaceFrog Voir le message
    tabtd[0]
    a gauche
    et là on fait un appendChild pour le mettre à la fin

    tabtd[tabtb.length]
    à droite
    et la on fait un insertBefore tabtd[0] pour le mettre au debut
    tu n'as pas besion de faire tous ça seulement appliquer le style direction=rtl
    et ça va inverser l'ordre des collones le premier a gauche devient le premier a droite et ainsi de suite pour tous les collones et si on veut recuperer une cellule d'une collone ça reste le méme soit avec direction=rtl ou direction=ltr . son numero de cellule est toujours le méme
    donc pourquoi ajouter les fonctions an haut.

  11. #11
    Rédacteur/Modérateur

    Avatar de SpaceFrog
    Homme Profil pro
    Développeur Web Php Mysql Html Javascript CSS Apache - Intégrateur - Bidouilleur SharePoint
    Inscrit en
    Mars 2002
    Messages
    39 658
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 75
    Localisation : Royaume-Uni

    Informations professionnelles :
    Activité : Développeur Web Php Mysql Html Javascript CSS Apache - Intégrateur - Bidouilleur SharePoint
    Secteur : Industrie

    Informations forums :
    Inscription : Mars 2002
    Messages : 39 658
    Billets dans le blog
    1
    Par défaut
    Ha je viens de comprendre

    En fait tu parlais d'inverser l'ordre des colonnes et non pas de juste basculer la première colonne en dernière position.
    Ma page Developpez - Mon Blog Developpez
    Président du CCMPTP (Comité Contre le Mot "Problème" dans les Titres de Posts)
    Deux règles du succès: 1) Ne communiquez jamais à quelqu'un tout votre savoir...
    Votre post est résolu ? Alors n'oubliez pas le Tag

    Venez sur le Chat de Développez !

  12. #12
    Expert confirmé
    Avatar de le_chomeur
    Profil pro
    Développeur informatique
    Inscrit en
    Février 2006
    Messages
    3 653
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Février 2006
    Messages : 3 653
    Par défaut
    tiens et si on pondait un script de drag and drop pour faire ça

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Réponses: 1
    Dernier message: 23/04/2015, 16h30
  2. Réponses: 2
    Dernier message: 26/03/2015, 17h49
  3. fixer les x premieres colonnes d'un tableau
    Par italiasky dans le forum jQuery
    Réponses: 2
    Dernier message: 21/05/2010, 02h59
  4. le premier colonne est adroite du tableau
    Par yacine.dev dans le forum Balisage (X)HTML et validation W3C
    Réponses: 2
    Dernier message: 06/01/2010, 13h38
  5. Réponses: 5
    Dernier message: 29/12/2005, 10h31

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo