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 :

innerHTML d'element Javascript


Sujet :

JavaScript

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre averti
    Profil pro
    Inscrit en
    Septembre 2010
    Messages
    19
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2010
    Messages : 19
    Par défaut innerHTML d'element Javascript
    Bonjour,

    je travaille sur une calculatrice et j'ai un petit problème avec mon innerhtml.


    JS
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
     
    function add_char(character)
    {
            window.document.calculatrice.print.innerHTML += character;
    }


    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
     
    <tr class="little_space">
    	<td colspan="4">
    		<table class="main_case">
    			<tr>
    				<td style="text-align: right;"> <input type="text" size="5" id="print" class="print_all"/></td>
    			</tr>
    		</table>
    	</td>
    </tr>
    <tr>
    	<td> <input type="button" class="cases" value="1" onclick="add_char('1')"/></td>
    	<td> <input type="button" class="cases" value="2" onclick="add_char('2')"/></td>
    	<td> <input type="button" class="cases" value="3" onclick="add_char('3')"/></td>
    	<td> <input type="button" class="cases" value="/" onclick="add_char('/')"/></td>
    </tr>

    Au début a la place de mon window.document.calculatrice.print.innerHTML j'avais mis window.document.calculatrice.print.value mais sous IE l'affichage ne marche pas :s. Donc la ça ne marche pas du tout quand je clique par exemple sur 1 ça devrais me l'afficher au niveau de mon input text (id=print)
    mais ça n'affiche rien du tout :s.

    Merci d'avance.

  2. #2
    Expert éminent

    Avatar de vermine
    Profil pro
    Inscrit en
    Mars 2008
    Messages
    6 582
    Détails du profil
    Informations personnelles :
    Âge : 40
    Localisation : Belgique

    Informations forums :
    Inscription : Mars 2008
    Messages : 6 582
    Par défaut
    Bonsoir,

    Ce code est compatible IE7 et FF3.6 :

    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
     
    <form name="calculatrice">
    <tr class="little_space">
    	<td colspan="4">
    		<table class="main_case">
    			<tr>
    				<td style="text-align: right;"> <input type="text" size="5" id="print" class="print_all"/></td>
    			</tr>
    		</table>
    	</td>
    </tr>
    <tr>
    	<td> <input type="button" class="cases" value="1" onclick="add_char('1')"/></td>
    	<td> <input type="button" class="cases" value="2" onclick="add_char('2')"/></td>
    	<td> <input type="button" class="cases" value="3" onclick="add_char('3')"/></td>
    	<td> <input type="button" class="cases" value="/" onclick="add_char('/')"/></td>
    </tr>
    </form>
    <script>
    function add_char(character)
    {
            window.document.calculatrice.print.value += character;
    }
     
    </script>
    Vérifiez avec votre code ce qui change. C'est bien .value qu'il faut utiliser. Si ça ne marche toujours pas, remplacez cette ligne-ci :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
     
    window.document.calculatrice.print.value += character;
     
    //par
     
    document.getElementById("print").value += character;
    Vous jouez avec des name et des id. Faites attention. Ce sont deux choses bien différentes qui sont appelées de manière différentes.

  3. #3
    Rédacteur

    Avatar de Bovino
    Homme Profil pro
    Développeur Web
    Inscrit en
    Juin 2008
    Messages
    23 647
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 54
    Localisation : France, Gironde (Aquitaine)

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Juin 2008
    Messages : 23 647
    Billets dans le blog
    20
    Par défaut
    Tout en sachant que print est une méthode native de JavaScript et donc un choix très inopportun pour un nom de champ
    Pas de question technique par MP !
    Tout le monde peut participer à developpez.com, vous avez une idée, contactez-moi !
    Mes formations video2brain : La formation complète sur JavaScriptJavaScript et le DOM par la pratiquePHP 5 et MySQL : les fondamentaux
    Mon livre sur jQuery
    Module Firefox / Chrome d'intégration de JSFiddle et CodePen sur le forum

  4. #4
    Membre averti
    Profil pro
    Inscrit en
    Septembre 2010
    Messages
    19
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2010
    Messages : 19
    Par défaut
    Merci de votre aide, donc innerHTML n'est pas utile ici ?

  5. #5
    Rédacteur

    Homme Profil pro
    Responsable de projet
    Inscrit en
    Mai 2009
    Messages
    634
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 46
    Localisation : France

    Informations professionnelles :
    Activité : Responsable de projet
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Mai 2009
    Messages : 634
    Par défaut
    innerHTML ne s'utilise pas avec les tags HTML de type input / select / textarea

    ++

  6. #6
    Rédacteur/Modérateur
    Avatar de andry.aime
    Homme Profil pro
    Inscrit en
    Septembre 2007
    Messages
    8 391
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Ile Maurice

    Informations forums :
    Inscription : Septembre 2007
    Messages : 8 391
    Par défaut
    Bonjour,

    innerHTML s'utilise à textarea . Avec la plupart des balises qui ne sont pas auto-fermante.

    A+.

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

Discussions similaires

  1. create element javascript
    Par Nicolas94 dans le forum Général JavaScript
    Réponses: 1
    Dernier message: 11/06/2010, 21h53
  2. recuperer un element javascript par son nom
    Par fafoula dans le forum Général JavaScript
    Réponses: 7
    Dernier message: 12/09/2008, 16h39
  3. [AJAX] Ajax, innerHTML et fonction javascript - solution ?
    Par gouroulubrik dans le forum Général JavaScript
    Réponses: 8
    Dernier message: 25/03/2008, 21h35
  4. [AJAX] Ajax, innerHTML et variable javascript
    Par philippejuju dans le forum Général JavaScript
    Réponses: 4
    Dernier message: 11/01/2007, 11h30
  5. [Javascript] variable pour accéder à element d'un formulaire
    Par aurelienalix dans le forum Général JavaScript
    Réponses: 3
    Dernier message: 25/08/2005, 10h50

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