如何在Javascript中打破行

时间:2016-04-29 11:56:03

标签: javascript

我的JS文件中有一个名为 hidden 的变量,如下所示:

var hidden=$('#hidden').val();

当我警告变量隐藏时,输出

Need for voice connection\n\ with text messaging pack\n\  and 3G data

但我需要输出为

Need for voice connection
with text messaging pack
and 3G data

如何实现呢?在Javascript中

3 个答案:

答案 0 :(得分:2)

所以你有一个包含\n\的字符串来表示新行?

用实际的新行替换这些字符。

var data = "Need for voice connection\\n\\ with text messaging pack\\n\\  and 3G data";
alert("Original: " + data);
data = data.replace(/\\n\\ /g, "\n");
alert("Replaced: " + data);

答案 1 :(得分:0)

这对我有用:

alert('test\\n\\test2\\n\\test3\\n\\test4'.replace(new RegExp(/\\n\\/g), '\n');

我用非转义字符替换所有excaped \n元素。

答案 2 :(得分:0)

有文本区域没有问题,你输入一些带换行符的句子,它必须按预期输出。这是一个演示..

$('#viewValue').on('click', function() {
  var hidden = $('#hidden').val();
  alert(hidden);
});
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<textarea id="hidden">Need for voice connection
with text messaging pack
and 3G data</textarea>

<button id="viewValue">view</button>

如果你真的输入了字符\n,并期待换行符,那么你必须付出一些额外的努力来获得你想要的输出。

使用正则表达式将\n替换为换行符。演示如下

$('#viewValue').on('click', function() {
  var hidden = $('#hidden').val().replace(/\\n/g, "\n");
  debugger;
  alert(hidden);
});
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<textarea id="hidden">Need for voice connection \n with text messaging pack \n and 3G data</textarea>

<button id="viewValue">view</button>