JavaScript警告框中的新行

如何在JavaScript警告框中添加新行?

553211 次浏览

\n将放入新行——\n是新行的控制代码。

alert("Line 1\nLine 2");

 alert("some text\nmore text in a new line");

Output:

some text
more text in a new line

你必须使用双引号来显示特殊字符,如\n \t等…在js中的警告框 例如在PHP脚本中:

$string = 'Hello everybody \n this is an alert box';
echo "<script>alert(\"$string\")</script>";

但是,当您希望显示以双引号指定的字符串时,可能会出现第二个问题。

看到链接文本

如果字符串用双引号(")括起来,PHP将为特殊字符解释更多转义序列

转义序列\n被转换为0x0A ASCII转义字符,该字符不会显示在警告框中。解决方案包括转义这个特殊的序列:

$s = "Hello everybody \\n this is an alert box";
echo "<script>alert(\"$string\")</script>";

如果您不知道字符串是如何封装的,则必须将特殊字符转换为它们的转义序列

$patterns = array("/\\\\/", '/\n/', '/\r/', '/\t/', '/\v/', '/\f/');
$replacements = array('\\\\\\', '\n', '\r', '\t', '\v', '\f');
$string = preg_replace($patterns, $replacements, $string);
echo "<script>alert(\"$string\")</script>";

只是为了帮助任何人,当从c#代码后面这样做时,我必须使用双转义字符,否则我会得到一个“未终止字符串常量”JavaScript错误:

ScriptManager.RegisterStartupScript(this, this.GetType(), "scriptName", "alert(\"Line 1.\\n\\nLine 2.\");", true);

在c#中,我做到了:

alert('Text\\n\\nSome more text');

它显示为:

文本

更多文本

适用于\n,但如果脚本是java标记,则必须编写\\\n

<script type="text/javascript">alert('text\ntext');</script>

<h:commandButton action="#{XXXXXXX.xxxxxxxxxx}" value="XXXXXXXX"
onclick="alert('text\\\ntext');" />
alert("text\nnew Line Text");

文档:Window.alert()


Firefox: < p >
firefox demo

< p >铬:
chrome demo

< p >边缘:
edge demo

javascript中的新行字符可以通过使用\n实现

这可以用

alert("first line \n second line \n third line");

输出:

第一行

第二行

第三行

下面是一个jsfiddle

JavaScript中的特殊字符代码列表:

Code    Outputs
\'  single quote
\"  double quote
\\  backslash
\n  new line
\r  carriage return
\t  tab
\b  backspace
\f  form feed

谢谢你的提示。使用“+”号是我能让它工作的唯一方法。这是加法函数的最后一行。我自己也在学习JavaScript:

alert("Line1: The sum is  " + sum + "\n" + "Line 2");

\n将不能工作,如果你在java代码中:

<% System.out.print("<script>alert('Some \n text')</script>"); %>

我知道这不是答案,只是觉得这很重要。

我使用了:"\n\r" -它只能在双引号中使用。

var fvalue = "foo";
var svalue = "bar";
alert("My first value is: " + fvalue + "\n\rMy second value is: " + svalue);


will alert as:


My first value is: foo
My second value is: bar

使用javascript的新行字符代替'\n'.. "Hello\nWorld"使用"Hello\x0AWorld" 效果很好!!< / p >

我看到有些人在MVC中遇到了问题,所以……使用模型传递“\n”的一个简单方法是使用HTML,在我的情况下甚至使用翻译文本。Raw来插入文本。这为我解决了问题。在下面的代码中,Model。警报可以包含换行符,如“Hello\nWorld”…

alert("@Html.Raw(Model.Alert)");
当你想用javascript写一个php变量的警报时,你必须在“\n”之前加一个“\”。

例:

PHP :
$text = "Example Text : \n"
$text2 = "Example Text : \\n"


JS:
window.alert('<?php echo $text; ?>');  // not working
window.alert('<?php echo $text2; ?>');  // is working

.
alert('The transaction has been approved.\nThank you');

Just add a newline \n character.

alert('The transaction has been approved.\nThank you');
//                                       ^^

 alert("some text\nmore text in a new line");

alert("Line 1\nLine 2\nLine 3\nLine 4\nLine 5");

你可以使用\ n作为换行符

alert("Welcome\nto Jumanji");

alert("Welcome\nto Jumanji");

ECMAScript 2015开始,你可以使用反勾号(' ')将模板文字包含在多行字符串中,如下所示:

alert(`Line1
Line2`);

输出:

Line1
Line2

在JAVA应用程序中,如果消息是从“属性”文件中读取。

由于双重编译java-html,

你需要双重逃生。

jsp.msg.1=First Line \\nSecond Line

会导致

First Line
Second Line