Mam do powiedzenia ciąg
string display_txt = "1st line text" +"\n" + "2nd line text";
w Jquery próbuję użyć
('#somediv').html(display_txt).css("color", "green")
całkiem wyraźnie oczekuję, że moja wiadomość zostanie wyświetlona w dwóch wierszach, ale zamiast tego \ n jest wyświetlana w wiadomości. Jakieś szybkie poprawki?
Dzięki,
<br />
tagu.html
działa.Odpowiedzi:
Użyj
<br />
dla nowej linii w html:display_txt = display_txt.replace(/\n/g, "<br />");
źródło
\n
znaku w ciągu. Zobacz dokumentację MDN.replace(/\n/g, "<br />")
jest zapobiegać tworzeniu nowej linii.Ustaw swój css w komórce tabeli na
white-space:pre-wrap;
document.body.innerHTML = 'First line\nSecond line\nThird line';
body{ white-space:pre-wrap; }
źródło
white-space:pre-line;
ponieważ sekwencje białych znaków zostaną zwinięte w jedną białą spację. Tekst będzie zawijany w razie potrzeby i na podziałach wierszy. Więcej informacji na: https://www.w3schools.com/cssref/pr_text_white-space.asp\n
oznacza nowy wiersz powinien być wydrukowany i robi go wydrukowaćMożesz użyć znacznika wstępnego zamiast elementu div. To automatycznie wyświetli twoje \ n we właściwy sposób.
<!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>
źródło
Może
.text
zamiast.html
?źródło
Miałem następujący problem, w którym pobierałem dane z bazy danych i chciałem wyświetlić ciąg zawierający
\n
. Żadne z powyższych rozwiązań nie zadziałało i wreszcie znalazłem rozwiązanie: https://stackoverflow.com/a/61484190/7251208źródło