我正在寻找一种在多个地方展示我的输入内容的方法,但是当我放置getelementsbyclassname('output')
代替getElementById('output')
我实际上有这个,但由于getElementById,只有第一个元素正在改变
<script>
function functionname() {
document.getElementById('output').innerHTML=document.getElementById('input').value;
}
</script>
<input type="text" id="input" onkeyup="functionname();return false;" />
<span id="output"></span>
先谢谢了,对不好的英语感到抱歉
答案 0 :(得分:0)
两个问题:
getelementsbyclassname
应为getElementsByClassName
。<span class="output"></span>
var input = document.getElementById('input'),
outputs = document.getElementsByClassName('output')
for (i=0; i<outputs.length; i++)
outputs[i].innerHTML = input.value;
但是,当您标记jquery时,您可以改为使用以下内容:
$('.output').html($('#input').val());
答案 1 :(得分:0)
好像你想根据输入值
更新多个div的htmlHTML
<input type="text" id="input" />
<div class="output"></div>
<div class="output"></div>
JS
$('.output').html($('#input').val());
JSFiddle:http://jsfiddle.net/DDnXs/
答案 2 :(得分:0)
var spans = [].slice.call(document.querySelectAll('.output'));
var val = document.getElementById('input').value;
for (var i = 0; i < spans.length; i++) {
spans[i].innerHTML = val;
}
这适用于类output
:
<span class="output"></span>
<span class="output"></span>
<span class="output"></span>