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 :

[JS] Création de code HTML


Sujet :

JavaScript

  1. #1
    Membre régulier Avatar de Badaboumpanpan
    Profil pro
    Inscrit en
    Janvier 2006
    Messages
    202
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2006
    Messages : 202
    Points : 80
    Points
    80
    Par défaut [JS] Création de code HTML
    Bonjour,

    Je suis débutant en Javascript et j'ai un tableau qui se présente de la forme suivante :

    Code HTML : 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
     
    <html>
    <head>
    	<title>TEST</title>
    </head>
    </html>
    <body>
    <form name="tableau">
    <table class="tableau" border="1" cellpadding="0" cellspacing="1">
    <tbody>
    	<tr><td colspan="8">Translation de Port</td></tr>
    	<tr><td colspan="6">Combien de translation de port souhaitez-vous cr&eacute;er ?</td><td colspan="2"><input type="text" maxlength="3" style="width: 25px; text-align: right;" name="nb-ligne" /></td></tr>
    <script type="text/javascript">
            function autreTSL(nb-ligne) {
                    for (var i = 1; i <= nb-ligne; i++) {
                            document.write("<tr><td>Interface d'entr&eacute;e :</td><td><input type=\"text\" maxlength=\"3\" style=\"width: 50px; text-align: right;\" name=\"int-entree"+i+"\" /></td><td>Port :</td><td><input type=\"text\" /></td><td>Adresse IP du serveur :</td><td><input type=\"text\" /></td><td>Port :</td><td><input type=\"text\" /></td></tr>\n\ ");
                    }
            }
    </script>
    </tbody>
    </table>
    </form>
    </body>
    </html>

    Et avec mon javascript en fonction du nombre de ligne que je mets, je voudrais dynamiquement qu'il crée les lignes.

    Mais mon script ne fonctionne pas...
    Quelqu'un peut-il m'aider ?

    D'avance merci !

  2. #2
    Expert confirmé
    Avatar de javatwister
    Homme Profil pro
    danseur
    Inscrit en
    Août 2003
    Messages
    3 681
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Calvados (Basse Normandie)

    Informations professionnelles :
    Activité : danseur

    Informations forums :
    Inscription : Août 2003
    Messages : 3 681
    Points : 5 221
    Points
    5 221
    Par défaut
    n'utilise pas la méthode write pour créer un tableau;

    difficile de comprendre à quoi doit ressembler ton tableau;
    à quoi vont servir ces lignes?
    à quoi sert le tableau?

    tu peux nous faire un dessin ou expliquer ton projet?

  3. #3
    Modérateur
    Avatar de Bisûnûrs
    Profil pro
    Développeur Web
    Inscrit en
    Janvier 2004
    Messages
    9 868
    Détails du profil
    Informations personnelles :
    Âge : 41
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Développeur Web

    Informations forums :
    Inscription : Janvier 2004
    Messages : 9 868
    Points : 16 258
    Points
    16 258
    Par défaut
    Je ne vois à aucun endroit un appel de ta foncton.

  4. #4
    Membre régulier Avatar de Badaboumpanpan
    Profil pro
    Inscrit en
    Janvier 2006
    Messages
    202
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2006
    Messages : 202
    Points : 80
    Points
    80
    Par défaut
    J'y ai mis en place un firewall sous Debian avec iptables. Je cherche à créer un fichier de règle via une interface web que je suis entrain de créer.

    Là je suis sur la partie "Translation de Ports". Je vais donc rectifier mon premier post.

    En gros je demande combien de translation de port on veut créer et en fonction de la réponse les lignes se crée.

    Je sais pas si éclair un peu plus...

  5. #5
    Membre régulier Avatar de Badaboumpanpan
    Profil pro
    Inscrit en
    Janvier 2006
    Messages
    202
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2006
    Messages : 202
    Points : 80
    Points
    80
    Par défaut
    Citation Envoyé par Bisûnûrs
    Je ne vois à aucun endroit un appel de ta foncton.
    Justement, je sais pas trop comment m'y prendre... Je me doute que c'est en partie pour ça que ça marche pas...

    J'ai pensé à un onLoad mais ça ne fait rien...

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    <tr><td colspan="6">Combien de translation de port souhaitez-vous cr&eacute;er ?</td><td colspan="2"><input type="text" onLoad="autreTSL" maxlength="3" style="width: 25px; text-align: right;" name="nb-ligne" /></td></tr>

  6. #6
    Membre régulier Avatar de Badaboumpanpan
    Profil pro
    Inscrit en
    Janvier 2006
    Messages
    202
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2006
    Messages : 202
    Points : 80
    Points
    80
    Par défaut
    Je viens de tester "onChange" mais ça ne change rien...

    Si ce n'est pas document.write ? Que faut-il mettre ?

  7. #7
    Membre régulier Avatar de Badaboumpanpan
    Profil pro
    Inscrit en
    Janvier 2006
    Messages
    202
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2006
    Messages : 202
    Points : 80
    Points
    80
    Par défaut
    J'ai résolu mon souci en utilisant une boucle en php.

    Si jamais vous avez tout de même une idée je suis preneur !!

  8. #8
    Membre expert
    Avatar de FremyCompany
    Profil pro
    Étudiant
    Inscrit en
    Février 2006
    Messages
    2 532
    Détails du profil
    Informations personnelles :
    Âge : 32
    Localisation : Belgique

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Février 2006
    Messages : 2 532
    Points : 3 239
    Points
    3 239
    Par défaut
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    function x() {
      var t = document.getElementById("tableID")
      for (...) {
         var r = t.addRow(); // syntaxe à vérifier
         r.innerHTML="<input name='xxx[]' />";
      }
    }
    Code XML : Sélectionner tout - Visualiser dans une fenêtre à part
    <xy onX="x();"></xy>
    Fremy
    Pour vos développements Web et une navigation agréable, le tout gratuit :
    1) IE 8 + IE7Pro (Si vous ne connaissez pas IE7Pro, essayez !)
    2) FF 3 + Web Developper Toolbar + AdBlockPlus + FireBug + GreaseMonkey

  9. #9
    Membre régulier Avatar de Badaboumpanpan
    Profil pro
    Inscrit en
    Janvier 2006
    Messages
    202
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2006
    Messages : 202
    Points : 80
    Points
    80
    Par défaut
    Alors, voilà où j'en suis :

    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
     
    function addRow(){
        var newRow = document.getElementById('tableau').insertRow(-1);
        var newCell = newRow.insertCell(0);
        newCell.innerHTML = "Interface d'entr&eacute;e :";
        newCell = newRow.insertCell(1);
        newCell.innerHTML = "<select name=\"interface\"><option value=\"int1\">INT1</option><option value=\"int2\">INT2</option><option value=\"int3\">INT3</option><option value=\"int4\">INT4</option></select>";
    	newCell = newRow.insertCell(2);
        newCell.innerHTML = "Port :";
    	newCell = newRow.insertCell(3);
        newCell.innerHTML = "<input type=\"text\" maxlength=\"5\" style=\"width: 40px; text-align: right;\" name=\"port-int-entree\" />";
    	newCell = newRow.insertCell(4);
        newCell.innerHTML = "Adresse IP du Serveur :";
    	newCell = newRow.insertCell(5);
        newCell.innerHTML = "<input type=\"text\" maxlength=\"15\" style=\"width: 100px; text-align: right;\" name=\"ip-srv\" />";
    	newCell = newRow.insertCell(6);
        newCell.innerHTML = "Port :";
    	newCell = newRow.insertCell(7);
        newCell.innerHTML = "<input type=\"text\" maxlength=\"5\" style=\"width: 40px; text-align: right;\" name=\"port-srv\" />";
    }
     
    function autreTSL(nombre) {
    	for (var i = 1; i <= nombre; i++) {
    		addRow();
    	}
    }
    et le code HTML :

    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
     
    <html>
    <head>
    	<title>TEST</title>
    	<script type="text/javascript" src="test.js"></script>
    </head>
    </html>
    <body>
    <form name="iptables">
    <table id="tableau" border="1" cellpadding="0" cellspacing="1">
    <tbody>
    	<tr><td colspan="8">Translation de Port</td></tr>
    	<tr><td colspan="6">Combien de translation de port souhaitez-vous cr&eacute;er ?</td><td><input type="text" maxlength="3" style="width: 25px; text-align: right;" name="nbligne" /></td><td><input type="button" value="OK" onClick="autreTSL(document.iptables.nbligne.value)" /></td></tr>
    </tbody>
    </table>
    </form>
    </body>
    </html>
    L'ajout de lignes fonctionne à merveille !!! Merci beaucoup !!!
    J'ai encore quelques inconvénients que je rencontre.
    Si je rentre un chiffre et que je valide j'obtiens bien le nombre de ligne souhaité. Je tape 4 --> 4 lignes. Mais imaginons que je me plante et que je souhaite en mettre 6... Je tape 6 --> 6+4 lignes. Comment puis-je faire pour que si je me trompe il prenne bien le nombre de ligne que je retape ?

    Merci beaucoup pour votre aide !!!

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

Discussions similaires

  1. Insertion code html dans bdd
    Par jeff37 dans le forum MS SQL Server
    Réponses: 3
    Dernier message: 15/04/2004, 15h03
  2. code html en ram -> TWebBrowser pour affichage
    Par FredericB dans le forum C++Builder
    Réponses: 2
    Dernier message: 22/04/2003, 22h55
  3. Récupérer le code HTML d'une page avec Delphi 7
    Par PsyKroPack dans le forum Web & réseau
    Réponses: 5
    Dernier message: 06/02/2003, 21h56
  4. Générer du code HTML
    Par patpst dans le forum C++Builder
    Réponses: 4
    Dernier message: 27/11/2002, 10h27
  5. composant builder4 pour afficher du code html
    Par BranRuz dans le forum C++Builder
    Réponses: 2
    Dernier message: 04/09/2002, 11h35

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