我是一个javascript新手,并且正在为我的课程最终项目挣扎。我们基本上正在进行在线测验。这是一个数学测验,我已经为答案设置了带有文本输入字段的表单,并且这些表单位于div容器内。我试图创建一个函数,在点击一个提交按钮后,将拉取用户输入的值,并使用该值将表单替换为div的内部html。通过这种方式,答案将被提交,并且在用户提交答案后不能更改。其中一个关键步骤是答案的数字单独输入 - 十列的字段,这是一个字段。我试图分别拉动它们,连接它们,然后将它们与计算出的实际答案进行比较。实际的答案将取代提交按钮,颜色编码以反映用户是否正确。下面是我有:JS用用户输入替换表单输入
var firstNumber = Math.floor((Math.random()*50)+1);
var secondNumber = Math.floor((Math.random()*50)+1);
var generate = function(){
document.getElementById("addends1").innerHTML=firstNumber;
document.getElementById("addends2").innerHTML=secondNumber;
};
var evaluate = function(){
var result = firstNumber+secondNumber;
document.getElementById("button").innerHTML=result;
var tens = document.getElementById("result10s").value;
var ones = document.getElementById("result1s").value;
var entry = tens + ones;
document.getElementById("resultContainer").innerHTML=entry;
var cO = document.getElementById("cO").value;
document.getElementById("carryOverContainer").innerHTML=cO;
var answer = parseFloat(entry);
if (answer===result) {
document.getElementbyID("resultContainer").style.color="#b2f078";
} else {
document.getElementbyID("resultContainer").style.color="#e87c73";
}
};
document.getElementById("button").onclick=evaluate();
(第一功能是所谓的HTML标签的onload的按钮图像) 谢谢! 编辑:我的问题是,我的代码根本没有做任何事情。我不知道这是否与我打电话给“评估”功能或功能本身有关。我想用他们输入的值替换所有表单域,然后用正确的解决方案替换添加问题的按钮。这是我的HTML:
<body>
<div id="carryOverContainer">
<form>
<input type="text" name="carryOver" id="cO"/>
</form>
</div>
<div id="addends1" class="addends"> </div>
<div id="addends2" class="addends"> </div>
<div id="resultContainer">
<form>
<input type="text" id="result10s" class="result">
<input type="text" id="result1s" class="result">
</form>
</div>
<div id="button" onclick=evaluate();>
<img src="next.png" alt="next" onload="generate();"/>
</div>
</body>
我怀疑问题可能在于我如何拉和存储表单字段的值?
我没有看到问题,但我明白你要做的事情的要点。什么是问题?你是否想要替换_button_,或者数字和一位数字的表单域,或两者?这可能有助于编辑您的问题并添加一些HTML,我们无法看到您的ID所指的是什么。 –
好的,我添加了html并试图澄清我的问题。该功能根本没有响应,我甚至不知道它是由于一个小错字还是一个重大的概念问题。 – user3567471