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 :

[DOM] Retour à la ligne


Sujet :

JavaScript

  1. #1
    Membre régulier
    Homme Profil pro
    Étudiant
    Inscrit en
    Octobre 2006
    Messages
    102
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Octobre 2006
    Messages : 102
    Points : 108
    Points
    108
    Par défaut [DOM] Retour à la ligne
    Bonjour tout le monde
    Voilà, j'ai un problème avec les retours à la ligne sous Internet explorer.
    Donc voila, j'ai un élément que j'aimerai bien créer, un textearea pour être plus préçis, et lui assigner un contenu, cependant celui-ci contient un retour à la ligne.

    Voici mon code :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    function createForm(type,parent,id,content){
    	alert(content);
    	var el = document.createElement(type);
    	el.id = id;
    	if(type == "input"){
    	}else{
    		alert(content);
    		el.innerHTML = content;
    	}
    	getElement(parent).appendChild(el);
    	return getElement(id);
    }
    Et donc, un exemple de content que j'ai défini à la main, je met :
    toto\ntoto, et lorsque mes alert s'affiche, ça me donne pour les deux cas un truc du genre :


    Ce que je comprend pas, c'est que dans mon alert, il me prend bien en compte le \n, et lorsque le textarea s'affiche il ne le prend plus en compte :s

    Et surtout, si on fait quelque chose du genre :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    document.getElementById('montextarea').innerHTML = "<textarea>toto\ntoto</textarea>";
    Là il me fait le retour à la ligne

    Voila, merci d'avance

  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 640
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 74
    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 640
    Points : 66 669
    Points
    66 669
    Billets dans le blog
    1
    Par défaut
    c'est pas %OA dans un textarea ? ou un truc du genre ?
    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
    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
    C'est normal vu que tu utilises innerHTML ...

    Un petit test :

    Code html : Sélectionner tout - Visualiser dans une fenêtre à part
    <textarea id="test">toto\ntoto</textarea>
    Affiche :
    toto\ntoto

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    function test(){
       document.getElementById('test').value = "toto\ntoto"
    }
    Code html : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    <body onload="test()">
    <textarea id="test"></textarea>
    Affiche :
    toto
    toto
    Utilise le DOM pour créer des éléments dans ta page et ça fonctionnera.

  4. #4
    Membre régulier
    Homme Profil pro
    Étudiant
    Inscrit en
    Octobre 2006
    Messages
    102
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Octobre 2006
    Messages : 102
    Points : 108
    Points
    108
    Par défaut
    Merci bisounours pour ce code, mais le problème c'est qu'il marche sous IE, mais pas sous Opera, il me met un textarea vide sous opera ( mais sa fonctionne aussi sous FF dernière version )

    Donc est-ce qu'il existe une autre solution que de passer par une détection du navigateur ?

    Sinon, quand on fait : <textarea id="test">toto\ntoto</textarea>, il faut le mettre dans un innerHTML, et là ça marche (sous IE 7, Firefox et Opera).

    Par exemple, j'ai refait un test avec ça :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    getElement("test").innerHTML = "<textarea>toto1\ntoto2</textarea>";
    Et là j'ai bien le retour à la ligne qui est compris

    Merci pour votre réponse rapide

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

Discussions similaires

  1. Structurer doc XML avec DOM et PHP (retour à la ligne)
    Par Guillaume_Caldera dans le forum Langage
    Réponses: 2
    Dernier message: 18/02/2010, 14h38
  2. [DOM] Transformation DOM -> String et retour à la ligne
    Par _-Sky-_ dans le forum Format d'échange (XML, JSON...)
    Réponses: 0
    Dernier message: 11/05/2009, 16h51
  3. [DOM] Insérer retours de lignes dans un textarea
    Par Ralfman68 dans le forum Général JavaScript
    Réponses: 11
    Dernier message: 17/02/2009, 13h06
  4. [DOM] Retour à la ligne dans un nodeValue
    Par Guybrush113 dans le forum Bibliothèques et frameworks
    Réponses: 3
    Dernier message: 18/12/2007, 14h45
  5. Conserver les retours à la ligne
    Par arwen dans le forum ASP
    Réponses: 2
    Dernier message: 04/12/2003, 12h50

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