J'ai une chaîne de mots
string display_txt = "1st line text" +"\n" + "2nd line text";
dans Jquery, j'essaye d'utiliser
('#somediv').html(display_txt).css("color", "green")
Je m'attends clairement à ce que mon msg soit affiché sur 2 lignes, mais à la place \ n est affiché dans le message. Des solutions rapides pour cela?
Merci,
<br />
tag.html
fonctionne.Réponses:
Utiliser
<br />
pour une nouvelle ligne en html:display_txt = display_txt.replace(/\n/g, "<br />");
la source
\n
caractère à l'intérieur de la chaîne. Voir la documentation MDN.replace(/\n/g, "<br />")
est d'éviter plus de nouvelle ligne.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; }
la source
white-space:pre-line;
séquences d'espaces qui se réduiront en un seul espace. Le texte sera enveloppé si nécessaire et sur les sauts de ligne. Plus d'informations sur: https://www.w3schools.com/cssref/pr_text_white-space.asp\n
signifie qu'une nouvelle ligne doit être imprimée et qu'elle l'imprimeVous pouvez utiliser une balise pré au lieu d'un div. Cela afficherait automatiquement vos \ n de la manière correcte.
<!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>
la source
Peut-être
.text
au lieu de.html
?la source
J'ai eu le problème suivant où je cherchais des données à partir d'une base de données et je voulais afficher une chaîne contenant
\n
. Aucune des solutions ci-dessus n'a fonctionné pour moi et j'ai finalement trouvé une solution: https://stackoverflow.com/a/61484190/7251208la source