Précédent   Forum des professionnels en informatique > Webmasters - Développement Web > JavaScript > Bibliothèques & Frameworks > jQuery
jQuery Forum d'entraide sur le framework jQuery. Avant de poster : Tutoriels jQuery, FAQ jQuery, Tous les tutoriels JavaScript, Toutes les FAQ JavaScript
Partagez cette discussion sur d'autres réseaux sociaux : Viadeo Twitter Google Facebook Digg Delicious MySpace Yahoo
Réponse Proposer ce sujet en actualité
 
Outils de la discussion
Publicité
'
Vieux 27/11/2010, 13h08   #1
Membre Expert
 
Inscription : décembre 2006
Messages : 2 048
Détails du profil
Informations forums :
Inscription : décembre 2006
Messages : 2 048
Points : 1 087
Points : 1 087
Par défaut Ajouter des cellules à un tableau

Bonjour,
j'ai le 1er code HTML ci-dessus. Je voudrais qu'à l'ouverture de la page, jQuery ajoute dans chaque ligne une cellule entre les deux présentes pour obtenir le second code HTML donné ci-après.
Donc si JavaScript n'est pas activé, j'ai juste une mise en forme statique.

Code lors de l'ouverture de la page HTML
Code html :
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
 
<table class="listing">
    <tr class="foldStartOpened level_0">
        <td class="numberColumn">
            <pre> 01 </pre>
        </td>
        <td class="codeColumn">
            <pre> def function(bidon):</pre>
        </td>
    </tr>
    <tr>
        <td class="numberColumn">
            <pre> 02 </pre>
        </td>
        <td>
            <pre>     """</pre>
        </td>
    </tr>
</table>
Code modifiée si JavaScript fonctionne :
Code html :
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
 
<table class="listing">
    <tr class="foldStartOpened level_0">
        <td class="numberColumn">
            <pre> 01 </pre>
        </td>
        <td class="foldingColumn" style="cursor:pointer;">
            <pre> - </pre>
        </td>
        <td class="codeColumn">
            <pre> def function(bidon):</pre>
        </td>
    </tr>
    <tr>
        <td class="numberColumn">
            <pre> 02 </pre>
        </td>
        <td class="foldingColumn">
        </td>
        <td>
            <pre>     """</pre>
        </td>
    </tr>
</table>

[Edit 18:50] J'y suis presque...
Code html :
1
2
3
4
5
6
7
8
9
10
11
12
 
// Adding the column for the folding actions.
    $("table.listing tr").each(function(){
        var symbolText = '',
            currentLine = $(this);
 
    if(currentLine.hasClass("foldStartOpened")){
        symbolText = '<pre> - <' + '/pre>';
    }
 
        currentLine.after('<td>' + symbolText + '<' + '/td>');
    });
Bien entendu, le code n'est pas ajouté au bon endroit. Il me reste à trouver la 1ère colonne de la ligne trouvée...

[Edit 19:08] C'est trouvé...
Code html :
1
2
3
4
5
6
7
8
9
10
11
12
13
 
    $("table.listing tr").each(function(){
        var htmlText = '<td class="foldingColumn" ',
            currentLine = $(this);
 
    if(currentLine.hasClass("foldStartOpened")){
        htmlText += 'style="cursor:pointer;"><pre> - <' + '/pre><' + '/td>';
    }else{
        htmlText += '><' + '/td>';
    }
 
        currentLine.children('td.numberColumn').after(htmlText);
    });
rambc est déconnecté   Envoyer un message privé Réponse avec citation 00
Réponse Proposer ce sujet en actualité Cette discussion est résolue.
Outils de la discussion



Fuseau horaire GMT +2. Il est actuellement 22h08.


 
 
 
 
Partenaires

Hébergement Web