如何在textarea中预格式化

时间:2012-03-19 00:23:23

标签: javascript html textarea pre

我想知道是否可以预先格式化textarea中的文本。现在我有一个textarea代码,我想添加语法高亮,并添加亚麻,所以我试图将文本包装在预标签内。这是正确的还是我应该做一些完全不同的事情?

<textarea id="conversation" class="codebox" style="font-family:courier;">
<pre class="brush: js;">//  Start typing...</pre>
</textarea>

2 个答案:

答案 0 :(得分:3)

textarea无法像您想要的那样呈现内容,它们只显示文本。我建议使用浏览器内代码编辑器。一个好的是CodeMirror,这很容易使用:

<强> HTML

<textarea id="code" name="code">
// Demo code (the actual new parser character stream implementation)

function StringStream(string) {
  this.pos = 0;
  this.string = string;
}
...
</textarea>

<强>的Javascript

var editor = CodeMirror.fromTextArea(document.getElementById("code"), {
    lineNumbers: true,
    matchBrackets: true
});

CodeMirror在新编辑器中插入包含该内容的可编辑块。

还有其他选择。维基百科有一个comparison of Javascript-based source code editors entry

答案 1 :(得分:1)

让Pre标签包含textarea可在Chrome中使用