Javascript textarea中的onkeyup事件
我有一个非常基本的HTML输入/输出结构:Javascript textarea中的onkeyup事件,javascript,dom-events,textarea,onkeyup,Javascript,Dom Events,Textarea,Onkeyup,我有一个非常基本的HTML输入/输出结构: <textarea id="input" onkeyup="sendCode()"> Hello World! </textarea> <div id="output"></div> sendCode()函数在我手动调用它时起作用,但在这个文本区域中似乎没有触发onkeyup事件 以下是JSFIDLE: 有什么帮助吗 更新:JSFIDLE已
<textarea id="input" onkeyup="sendCode()">
Hello World!
</textarea>
<div id="output"></div>
sendCode()
函数在我手动调用它时起作用,但在这个文本区域中似乎没有触发onkeyup
事件
以下是JSFIDLE:
有什么帮助吗
更新:JSFIDLE已更新并正在运行。使用值,因为它不是内容文本,而是值属性
var input = document.getElementById("input");
var output = document.getElementById("output");
function sendCode(){
output.innerHTML = input.value;
}
而工作使用值,因为它不是内容文本,而是值属性
var input = document.getElementById("input");
var output = document.getElementById("output");
function sendCode(){
output.innerHTML = input.value;
}
和工作在哪里定义
sendCode()
函数?它可能不存在于您创建文本区域的位置
此代码段应该可以工作:
<textarea id="editor">
Hello World!
</textarea>
<div id="output"></div>
<script type="text/javascript">
var editor = document.getElementById("editor");
var output = document.getElementById("output");
function sendCode(){
output.innerHTML = editor.value;
}
editor.addEventListener('keyup',sendCode);
</script>
你好,世界!
var editor=document.getElementById(“编辑器”);
var output=document.getElementById(“输出”);
函数sendCode(){
output.innerHTML=editor.value;
}
editor.addEventListener('keyup',sendCode);
在哪里定义sendCode()
函数?它可能不存在于您创建文本区域的位置
此代码段应该可以工作:
<textarea id="editor">
Hello World!
</textarea>
<div id="output"></div>
<script type="text/javascript">
var editor = document.getElementById("editor");
var output = document.getElementById("output");
function sendCode(){
output.innerHTML = editor.value;
}
editor.addEventListener('keyup',sendCode);
</script>
你好,世界!
var editor=document.getElementById(“编辑器”);
var output=document.getElementById(“输出”);
函数sendCode(){
output.innerHTML=editor.value;
}
editor.addEventListener('keyup',sendCode);
首先,我想指出,这不会运行,因为代码在HTML存在之前运行,所以首先,将这些行放在函数中:
window.onload= function anyname() {
var input = document.getElementById("input");
var output = document.getElementById("output");
}
其次,尝试使用以下任一方法:
editor.onkeyup = "sendCode()"
在脚本区域或我创建的新函数顶部:
editor.addEventListener(keyup,sendCode,false)
基本上,当一个键在该区域中出现时,它会调用
sendCode()
函数。如果您不想使用捕获(我认为这是默认设置,但只是为了安全起见),则为假。我首先要指出,这不会运行,因为代码在HTML存在之前运行,因此首先,请将以下行放在函数中:
window.onload= function anyname() {
var input = document.getElementById("input");
var output = document.getElementById("output");
}
其次,尝试使用以下任一方法:
editor.onkeyup = "sendCode()"
在脚本区域或我创建的新函数顶部:
editor.addEventListener(keyup,sendCode,false)
基本上,当一个键在该区域中出现时,它会调用
sendCode()
函数。如果您不想使用捕获,则为假,我认为这是默认设置,但只是为了安全起见。基本上java脚本不是动态的。因此更好的选择是
使用jQuery
[注:-“jquery-2.2.min.js”在src中,在script标记中给出,
is Jquery库文件代码可以从以下链接复制:
只需将上面链接的内容复制到一个文本文件中,并以“jquery-2.2.2.min.js”的名称保存即可
或者任意其他名称。脚本的src应该包含相同的名称。
“jquery-2.2.2.min.js”应该位于
您有html文件。否则需要提及完整路径
这是你问题的答案
<html>
<head>
<title>Dynamic TextArea</title>
<script type="text/javascript" src="jquery-2.2.2.min.js"></script>
<script type="text/javascript">
$(document).ready(function(){
$("textarea").keyup(function(){
sendCode();
});
});
function sendCode(){
document.getElementById("output").innerHTML =
document.getElementById("input").value;
}
</script>
</head>
<body>
<form>
<textarea id="input">
Hello World!
</textarea>
</form>
<span id="output"></span>
</body>
</html>
动态文本区
$(文档).ready(函数(){
$(“textarea”).keyup(函数(){
sendCode();
});
});
函数sendCode(){
document.getElementById(“输出”).innerHTML=
document.getElementById(“输入”).value;
}
你好,世界!
如果您有任何疑问,请询问。
我确信,一旦你学会使用jQuery,你就会忘记javascript。基本上java脚本并不是那么动态的。所以更好的选择是 使用jQuery [注:-“jquery-2.2.min.js”在src中,在script标记中给出, is Jquery库文件代码可以从以下链接复制: 只需将上面链接的内容复制到一个文本文件中,并以“jquery-2.2.2.min.js”的名称保存即可 或者任意其他名称。脚本的src应该包含相同的名称。 “jquery-2.2.2.min.js”应该位于 您有html文件。否则需要提及完整路径 这是你问题的答案
<html>
<head>
<title>Dynamic TextArea</title>
<script type="text/javascript" src="jquery-2.2.2.min.js"></script>
<script type="text/javascript">
$(document).ready(function(){
$("textarea").keyup(function(){
sendCode();
});
});
function sendCode(){
document.getElementById("output").innerHTML =
document.getElementById("input").value;
}
</script>
</head>
<body>
<form>
<textarea id="input">
Hello World!
</textarea>
</form>
<span id="output"></span>
</body>
</html>
动态文本区
$(文档).ready(函数(){
$(“textarea”).keyup(函数(){
sendCode();
});
});
函数sendCode(){
document.getElementById(“输出”).innerHTML=
document.getElementById(“输入”).value;
}
你好,世界!
如果您有任何疑问,请询问。
我相信,一旦你学会使用jQuery,你就会忘记javascript。@DamanDaman如果这是你的最佳答案,你可以将其标记为已接受,让其他人知道np@DamanDaman如果这对你来说是最好的答案,你可以把它标记为接受,让别人知道