假设在输入字段和发送按钮之间插入输入的文本,但它注意到了。
<body>
<section>
<p>passcode: <input type=text id=passcode></p>
<section id=middle></section>
<p><input type=button id=button value=send></p>
</section>
<script type="text/javascript">
var log=new Array();
document.getElementById("button").onclick=exlog();
exlog(){
log.push(document.getElementById("passcode").value)
for(i=0;i<log.length;i++){
document.getElementById("middle").innerHtml=log[i];
}
}
</script>
</body>
答案 0 :(得分:3)
更改
document.getElementById("middle").innerHtml=log[i];
到
document.getElementById("middle").innerHTML=log[i];
参考:https://developer.mozilla.org/en-US/docs/DOM/element.innerHTML
答案 1 :(得分:2)
您的exlog
函数缺少函数关键字,而您正在错误地设置onclick处理程序。
同样innerHtml
应为innerHTML
document.getElementById("button").onclick=exlog;
function exlog(){
log.push(document.getElementById("passcode").value)
for(i=0;i<log.length;i++){
document.getElementById("middle").innerHTML=log[i];
}
答案 2 :(得分:1)
我注意到您的代码存在一些问题。最重要的是,你应该使用innerHTML,而不是innerHtml(注意大写)。
此外,您需要注意如何处理功能。只是把exlog(){}放在一起就不会创建一个函数。相反,您应该使用function关键字。
最后,您要将onclick处理程序设置为函数exlog。您使用的实际上将onclick处理程序设置为评估exlog函数的结果。
这是一个包含所有建议更改的解决方案:
<body>
<section>
<p>passcode: <input type=text id=passcode></p>
<section id=middle></section>
<p><input type=button id=button value=send></p>
</section>
<script type="text/javascript">
var log=new Array();
document.getElementById("button").onclick=exlog;
function exlog(){
log.push(document.getElementById("passcode").value)
for(i=0;i<log.length;i++){
alert(log[i]);
document.getElementById("middle").innerHTML=log[i];
}
}
</script>
</body>
答案 3 :(得分:0)
您正在使用它来评估函数:exlog()
,因为exlog没有return语句,它的计算结果为undefined
,浏览器将不会执行该函数。
如果您想分配它,您可以使用它的名称exlog
此外,如Teemu和Musa所述,exlog
的定义中缺少函数关键字
此外,innerHTML
的大小写必须准确,混合情况不会起作用。
<body>
<section>
<p>passcode: <input type=text id=passcode></p>
<section id=middle></section>
<p><input type=button id=button value=send></p>
</section>
<script type="text/javascript">
var log = [];
document.getElementById("button").onclick = exlog; // <== no need to evaluate the function, just assign it.
function exlog(){ // <== as pointed out below function keyword was missing
log.push(document.getElementById("passcode").value);
document.getElementById("middle").innerHTML += log[log.length - 1]; // <== needs to be capitilized exactly like this
}
</script>
</body>