1

当在文本区域中键入 ^1 之类的代码时,我希望将该代码之后的任何文本的字体颜色更改为 ^1 分配给的任何颜色,

截至目前,我有以下内容:

<form method="post" action="index.php">
<textarea id="text" onkeypressed="changecolor()"></textarea>
<input type="submit" value="Add">
</form>

javascript:

function changecolor() { //code here }

所以基本上当我输入 ^1 并将蓝色分配给该代码时,该代码之后的文本将是蓝色,但是当输入第二个代码时;例如 ^2 之后的文本将是分配给该代码的颜色,

我非常了解如何将数据插入数据库,但我需要能够找到获取原始数据的方法;即最初使用 ^1 和 ^2 之类的代码输入到 textarea 的数据

非常感谢您的帮助!

4

1 回答 1

0

您不能针对文本区域中的特定文本片段。除非您监视其内容并添加一个抽象 div 层以从中输出样式化的 html,否则您想做什么是我不知道的。许多所见即所得的文本编辑器都是这样做的,或者使用'contenteditable'属性来允许在现代浏览器中编辑html......你可以这样开始:

<script type="text/javascript">
    var display, input, displayHtml;
    function init(){
       display = document.getElementById('display');
       input = document.getElementById('input');
    }
    function onContentChange(){
        displayHtml = parseContent(this.value);
        display.innerHtml = displayHtml;
    }
    function parseContent(text){
        var html = ... // Generate html according to content
        return html;
    }
    document.onload=init;
</script>

html:

<textarea id='input' onkeypress="javascript:onContentChange" />
<div id='display'></div>
于 2012-09-16T10:31:16.873 回答