Texte en gras javascript

Fermé
parousky Messages postés 325 Date d'inscription mardi 11 septembre 2012 Statut Membre Dernière intervention 20 février 2022 - 17 avril 2015 à 14:09
Yuh12 Messages postés 184 Date d'inscription mercredi 7 mai 2014 Statut Membre Dernière intervention 28 septembre 2017 - 18 avril 2015 à 03:30
Bonjour, avec une fonction javascript, j'écris un texte d'accès un textarea et j'aimerais mettre une partie de ce que j'écris en gras, mais une partie seulement.
Alors j'ai essayé ça :

var d = document.getElementById(' commentaires');
d.textContent += "<strong>"+ salut+"</strong>";

Mais ça ne fonctionne pas. Et j'ai aussi tenté avec une balise b, idem.
Voyez vous une solution ?
Merci d'avance !

4 réponses

Yuh12 Messages postés 184 Date d'inscription mercredi 7 mai 2014 Statut Membre Dernière intervention 28 septembre 2017 24
17 avril 2015 à 14:25
Pour trouver une piste de réflexion approprié je pense qu'il faudrait un peu plus d'infos.

Tu ne peux le faire ni en HTML ni en CSS ?
Tu veux mettre une partie précise ou aléatoire ?
A quoi ressemble ton html, à quel div ou paragraphe peut-on s'adresser?

En tout cas le code que tu présente ici si il fonctionnait ferait un truc du genre :

Mon commentaire à la base.

Mon commentaire à la base. salut

Puisque le += sert à ajouter quelque chose en plus à ta variable.
Mais en javascript si tu veux ajouter du texte, c'est plutôt innerHTML ou append()
0
parousky Messages postés 325 Date d'inscription mardi 11 septembre 2012 Statut Membre Dernière intervention 20 février 2022 6
17 avril 2015 à 23:13
Merci pour ta réponse !
Et bien, j'effectue une requête Ajax, je lis le contenu d'une page dans laquelle j'effectue une requête SQL.
Ensuite, je veux afficher le contenu de la réponse, sans effacer les réponses précédentes (j'effectue cette requête Ajax toutes les 3 secondes).
Et dans cette réponse, je ne veux mettre qu'une partie en gras.
Aussi, pour simplement réussir à faire des sauts de ligne à l'affichage, j'écris dans un textarea qui est en lecture seule (c'est un peu farfelu je sais mais je n'ai pas trouvé d'autre solution !). Voilà mon code complet :


<?php
session_start();
echo $_SESSION['mail'];
?>
<!DOCTYPE html>
<html>
<head>
<link rel="stylesheet" href="//code.jquery.com/ui/1.10.4/themes/smoothness/jquery-ui.css">
<script src="//code.jquery.com/jquery-1.10.2.js"></script>
<script src="//code.jquery.com/ui/1.10.4/jquery-ui.js"></script>
</head>

<textarea id="commentaires" cols="150" rows="20" style="border: 0px solid;font-family:TAHOMA">

</textarea>

<script>


var interval = setInterval(RequestAjax, 3000);
var list = Array();
function RequestAjax()
{
var d = document.getElementById('commentaires');


$.ajax({
url: 'functions.php',
type: 'GET',
data: {MailConv: mail},
dataType: 'html',
success: function(code_html, statut)
{

if(code_html == "")
{
d.textContent = "pas de nouveaux messages";
}
else
{
list = JSON.parse(code_html);
console.log(list);
AfficheMsg();

}


}


}


)

}

function AfficheMsg()
{
var d = document.getElementById('commentaires');
if(list.length[0]>0)
{
for(i=0;i<list.length;i++)
{
d.textContent += ""+list[0][i]+"";
d.textContent += "\n";
d.textContent += "\n";
d.textContent += ""+list[1][i]+"";
d.textContent += "\n";
d.textContent += ""+list[2][i]+"";
d.textContent += "\n";
d.textContent += "\n";
}
}

}


</script>

<body onload="RequestAjax()">






</body>

</html>


Merci d'avance !
0
parousky Messages postés 325 Date d'inscription mardi 11 septembre 2012 Statut Membre Dernière intervention 20 février 2022 6
17 avril 2015 à 23:14
Et oui comme tu l'as écris, je voudrais obtenir quelque chose d'écrit du type :

Blablabla Blablabla, etc...
0
jordane45 Messages postés 38167 Date d'inscription mercredi 22 octobre 2003 Statut Modérateur Dernière intervention 7 mai 2024 4 657
17 avril 2015 à 23:41
Bonjour,
..
var d = document.getElementById(' commentaires');
d.innerHTML+= "<strong>"+ salut+"</strong>";
0
Yuh12 Messages postés 184 Date d'inscription mercredi 7 mai 2014 Statut Membre Dernière intervention 28 septembre 2017 24
Modifié par Yuh12 le 18/04/2015 à 03:31
C'est bien ça ton problème, il te manque innerHTML ou append() qui sont les fonctions pour ajouter du HTML en javascript, tu ne peux pas juste préciser que ton contenu est égal à du texte il ne le comprend pas.

Comme précise jordane au lieu de
d.textContent = "pas de nouveaux messages";

Il faut
d.innerHTML="pas de nouveaux messages";


C'est pour ça que tu n'arrivais pas à faire des sauts de ligne.
0