web-dev-qa-db-fra.com

Utilisation de la nouvelle ligne (\ n) dans la chaîne et restitution de la même chose en HTML

J'ai une corde dire

string display_txt = "1st line text" +"\n" + "2nd line text";

dans Jquery, j'essaie d'utiliser

('#somediv').html(display_txt).css("color", "green")

très clairement, je m'attends à ce que mes messages soient affichés sur 2 lignes, mais\n est affiché dans le message. Des solutions rapides pour cela?

Merci,

73
KeenUser

Utilisation <br /> pour nouvelle ligne en HTML:

display_txt = display_txt.replace(/\n/g, "<br />");
62
Samich

Définissez votre css dans la cellule du tableau sur

white-space:pre-wrap;
document.body.innerHTML = 'First line\nSecond line\nThird line';
body{ white-space:pre-wrap; }
129
vsync

Vous pouvez utiliser une balise pré au lieu d'un div. Cela afficherait automatiquement votre\n de la bonne manière.

<!DOCTYPE html>
<html>
<head>
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.12.0/jquery.min.js"></script>
<script>
$(document).ready(function(){
         var display_txt = "1st line text" +"\n" + "2nd line text";
         $('#somediv').html(display_txt).css("color", "green");
});
</script>
</head>
<body>

<pre>
<p id="somediv"></p>
</pre>

</body>
</html>
4
Frank im Wald

Peut être .text au lieu de .html?

1
user1046334