删除Textarea中的新行并替换为\ n字符值

时间:2014-09-17 07:28:53

标签: javascript jquery

小提琴 - http://liveweave.com/YNegwI

我正在制作一个小型发电机。然而,我遇到了一个问题,我还没弄清楚如何修复。

例如:

说这是我要转换的代码

.editor, .preview {
  position: absolute;
  width: 50%;
  height: 100%;
  padding: 0;
  font-family: monospace;
  line-height: 1;
  min-height: 1.4em;
  line-height: 1.4em;
  font-size: 1em;
  border: 0;
  border-radius: 0;
  resize: none;
}

.editor {
  left: 0;
  color: #0b0;
  background-color: #000;
}

.preview {
  right: 0;
  background-color: #fff;
}

最终结果应生成以下代码。

body {\n  margin: 0;\n  background: #333;\n}\n\n.editor, .preview {\n  position: absolute;\n  width: 50%;\n  height: 100%;\n  padding: 0;\n  font-family: monospace;\n  line-height: 1;\n  min-height: 1.4em;\n  line-height: 1.4em;\n  font-size: 1em;\n  border: 0;\n  border-radius: 0;\n  resize: none;\n}\n\n.editor {\n  left: 0;\n  color: #0b0;\n  background-color: #000;\n}\n\n.preview {\n  right: 0;\n  background-color: #fff;\n} 

对于那些不太了解这个问题的人...... 我删除了每一个新行,并尝试编写\n NOT 来插入新行,但显示代码本身的文本。如上所示。)

如果有人能帮助它,我们将非常感激。

2 个答案:

答案 0 :(得分:3)

在你提供的小提琴中,我会替换" break_meee_baby"用" \\ n" (斜线斜线-N)。这似乎产生了你所需要的。

答案 1 :(得分:2)

因为\表示某个特殊字符或命令的开头,所以必须将其转义(通过添加另一个斜杠)以“按原样”输出并阻止它处理:\\n

$(document).ready(function() {
  var editor = $('.editor'),
      preview = $('.preview');

  // Remove new line and insert new like "\n" to show the text in value
  editor.on('load keyup change', function() {
    preview.val( $(this).val().replace(/\n/g,'\\n') );
  }).change();
});
相关问题