我有以下代码:
<!DOCTYPE html>
<html>
<head>
<script type="text/javascript">
function timeMsg()
{
var t=setTimeout("enterquestion()",900000);
}
function enterquestion()
{
document.getElementById("questions").innerHTML += '<p>' + document.getElementById("question").value;
}
</script>
</head>
<body>
<h1>Testing Website</h1>
<p id="questions"></p>
<input type="text" name="question" id="question" />
<button type="button" onclick="timeMsg()">Enter question</button>
</body>
</html>
所有这些代码都是允许用户输入问题,然后在15分钟过后将问题添加到问题列表中。
我想对代码做的就是让它立即将“QUESTION RECORDED”文本放在问题显示的地方,然后不要简单地将问题添加到最后,它应该用问题替换“QUESTION RECORDED”文本。
我无法弄清楚如何以可以同时输入多个问题的方式来做到这一点。
感谢任何帮助,
谢谢!
答案 0 :(得分:0)
当您想要替换元素的整个内容而不是添加或插入子节点时,innerHTML属性很方便。为此,使用createElement更容易。
以下是让您前往的示例:
<script>
function addDiv(parent, text) {
var div = document.createElement('div');
div.appendChild(document.createTextNode(text));
parent.appendChild(div);
}
</script>
<form action="serverprocess" onsubmit="return false;">
<input type="text" name="qText" value="Question text">
<button onclick="
addDiv(document.getElementById('container'), this.form.qText.value);
">Add question</button>
</form>
<div id="container"></div>
在上面,如果javascript不可用或没有活动,表单将被提交并且可以在服务器上进行处理。如果它可用,那么它将在本地处理,表单将不会提交,但提交应该基于成功完成操作。
我会留下你的思考。