[英]Why is my \n newline not working?
編輯已解決
我想知道為什么下面的代碼不起作用-沒有“換行符”有人產生想法嗎? 謝謝
$('#results').append("Try again! \n I believe in you");
空格不會在html中中斷,它們會折疊成一個顯示為的空白 。 如果要在html中顯示中斷,則必須使用break標簽
<br>
$('#results').append("Try again! <br> I believe in you");
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script> <div id="results"></div>
它是HTML格式,您需要使用換行符<br>
而不是換行符。
我假設您正在執行ajax調用或其他操作,並且結果包含'\\ n'並且您無法更改它?
很好,在HTML中,諸如\\ n和空格之類的東西都將被忽略,除非您明確聲明要使用空格。
有兩種主要方法可以做到這一點。
首先是<pre>
標簽
$(function() { $('#results').append("Try again! \\n I believe in you"); })
<html> <head> <script data-require="jquery@*" data-semver="2.2.0" src="https://ajax.googleapis.com/ajax/libs/jquery/2.2.0/jquery.min.js"></script> </head> <body> <pre id="results"></pre> </body> </html>
第二(更好的方法)是使用white-space
的css
在下一個示例中,我使用white-space:pre-line
這將僅保留\\ n或white-space:pre-line
行
$(function() { $('#results').append("Try again! \\n I believe in you"); })
<html> <head> <script data-require="jquery@*" data-semver="2.2.0" src="https://ajax.googleapis.com/ajax/libs/jquery/2.2.0/jquery.min.js"></script> </head> <body> <div style = "white-space: pre-line" id="results"></div> </body> </html>
請注意,第二個命令使用的是標准<div>
,它會觸發換行,並且在\\ n之后不會保留多余的空格? 那可能是您想要的更多。 您也可以將其設置為white-space:pre
,並且div在空白和換行方面的表現應與<pre></pre>
。
white-space
有很多選擇:
空格:普通| nowrap | pre | line | pre-wrap | initial |繼承;
那應該為您提供所需的東西。
如果要查找非常特定的格式,則可能需要使用Javascript清理文本。
還有其他中斷文本的方法,但是如果您專門使用\\n
那么這是我所知道的僅有的兩種方法。
希望這可以幫助!
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.