在HTML元素onkeyup中返回输出

时间:2016-01-23 15:30:29

标签: javascript jquery html

我正在研究html编辑器,但是这部分给我一个问题,无论如何要存档这个?当我输入文本字段时,它将在div元素中显示一个输出。

<script type="javascript/text">
    function ColorText(){
        T = Rep(document.getElementById("text").value);
        document.getElementById("wcode").innerHTML=T;
        setTimeout("ColorText()",10);
    }
</script>

这里是HTML部分

<input type="text" id="text" onkeypress="ColorText()"/>
<div type="text" id="wcode"></div>

2 个答案:

答案 0 :(得分:1)

更优雅的解决方案,没有setTimeout:

function Rep(value){
  //Do your thing...
  return value;
}

var wcode = document.getElementById("wcode");
var text = document.getElementById("text");

text.addEventListener("input", function(){ 
  wcode.innerHTML = Rep(this.value);
});
<input type="text" id="text"/>
<div id="wcode"></div>

答案 1 :(得分:0)

Codesoft,您的代码可能不适用于两件事:

<script type="javascript/text">

将其更改为:

<script>

<script type="text/javascript">

另一个可能的问题是:

T = Rep(document.getElementById("text").value);

也许你还没有定义函数Rep()。你必须定义它并返回一个字符串值,或者不要使用它,如下所示:

T = document.getElementById("text").value;

除此之外, Marcos Casagrande 为您提供了更好的解决方案,请查看该代码。