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 :

Petite fonction toute simple, mais


Sujet :

JavaScript

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre éprouvé Avatar de renaud26
    Homme Profil pro
    Webmaster
    Inscrit en
    Mars 2003
    Messages
    1 365
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 62
    Localisation : France, Côtes d'Armor (Bretagne)

    Informations professionnelles :
    Activité : Webmaster

    Informations forums :
    Inscription : Mars 2003
    Messages : 1 365
    Par défaut Petite fonction toute simple, mais
    Bonjour à tous,

    Je débute en JS.
    Je voudrais afficher un mot qui serait modifié selon des attributs choisis dans un formulaire. Alors j'ai fait une petite fonction...qui ne fonctionne pas...

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
     
     
    function affiche_mot(){
     
    if (document.form1.gras.checked==true)
    { 
    document.write("<B>" + document.form1.mot.value + "</B>");
    }
    puis dans le form1:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
     
    <input type="hidden" name="mot" value="Le Mot">
     <input name="gras" type="checkbox"  onClick="affiche_mot();">
    et j'affiche la fonction à l'endroit où je voudrais voir Le Mot

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
     
    <script language="JavaScript" type="text/JavaScript">
    affiche_mot()</script>
    Si je coche la case, cela m'affiche bien le mot en gras, mais plus rien d'autre dans la fenêtre ! une page blanche et le mot tout seul

  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 659
    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 659
    Billets dans le blog
    1
    Par défaut
    normal document.write efface le reste du doc ...

    mets un div et attribue lui le innerHTML
    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 éprouvé Avatar de renaud26
    Homme Profil pro
    Webmaster
    Inscrit en
    Mars 2003
    Messages
    1 365
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 62
    Localisation : France, Côtes d'Armor (Bretagne)

    Informations professionnelles :
    Activité : Webmaster

    Informations forums :
    Inscription : Mars 2003
    Messages : 1 365
    Par défaut
    Merci pour ta réponse, mais en cherchant, j'ai lu que innerHTML ne fonctionnait que sous IE. Qu'en penses tu ?

  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 659
    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 659
    Billets dans le blog
    1
    Par défaut
    que je sais pas ou t'as lu ça mais ne retourne jamais sur ce site ... c'est un ramassis de conneries ...
    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 éprouvé Avatar de renaud26
    Homme Profil pro
    Webmaster
    Inscrit en
    Mars 2003
    Messages
    1 365
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 62
    Localisation : France, Côtes d'Armor (Bretagne)

    Informations professionnelles :
    Activité : Webmaster

    Informations forums :
    Inscription : Mars 2003
    Messages : 1 365
    Par défaut
    oups ! alors je ne dirai pas lequel

    Bon voici ce que j'ai fait

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
     
     
    function affiche_mot(){
    if (document.form1.gras.checked==true)
    { 
    document.all.affiche.innerText = "<b>" + document.form1.mot.value + "</b>"; 
    }
    }
    Donc le mot s'affiche bien dans mon div "affiche", mais il ne se met pas en gras, il affiche les balises !
    Par ailleurs, si je peux me permettre, ma question n'était pas complète. J'ai prix l'exemple de l'attribut gras, mais en réalité j'ai 5 checkbox et 5 attributs (italique, souligné, couleur...)...
    Comment tu articulerais la fonction pour que les effets s'appliquent sur le mot en se cumulant, ou s'annulent si le checkbox est décoché ?
    Je me vois pas trop mettre autant de else if que de combinaisons...

  6. #6
    Membre éclairé Avatar de linar009
    Profil pro
    Inscrit en
    Juillet 2006
    Messages
    497
    Détails du profil
    Informations personnelles :
    Âge : 42
    Localisation : France

    Informations forums :
    Inscription : Juillet 2006
    Messages : 497
    Par défaut
    Ben je sais pas ce que vous en pensez mais pour moi innerHTML fonctionne sur tous les navigateurs (à part peut-être internet explorer version 0.2beta )

    Donc voici mon conseil :

    document.all.affiche.innerHTML = "<b>" + document.form1.mot.value + "</b>";

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

Discussions similaires

  1. [MySQL] Problème tout simple mais résultat incompréhensible
    Par KaXz dans le forum PHP & Base de données
    Réponses: 5
    Dernier message: 25/02/2007, 00h48
  2. Problème avec une petite fonction toute bête
    Par jeremy13 dans le forum MATLAB
    Réponses: 3
    Dernier message: 18/01/2007, 09h10
  3. un petit code tout simple o_O avec des $POST variable :)
    Par dark_vidor dans le forum Langage
    Réponses: 5
    Dernier message: 08/04/2006, 01h08
  4. Petit truc tout simple que je comprend pas
    Par Olaf MENJI dans le forum Général JavaScript
    Réponses: 6
    Dernier message: 29/11/2005, 16h56
  5. creation d'une procedure ou fonction toute simple?
    Par atlas2003 dans le forum SQL Procédural
    Réponses: 2
    Dernier message: 16/11/2005, 14h56

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