从 javascript 函数和 onkeydown 进行输出显示
Making output display from javascript function and onkeydown
我对制作输出显示有疑问。我的代码大部分都有效,但只有在我删除输入之后。比如我输入“0”没有任何反应,但是我把输入的0删掉后,才会显示“100%”。我试图在输入中输入“0”后立即显示“100%”。需要明确的是,我并不是要制作计算器。除了百分比,我还会输入其他输出。
document.getElementById("myscore").onkeydown = function() {
myJsFunction()
};
function myJsFunction() {
var numberwrong = document.getElementById('myscore').value;
if (numberwrong == 0) {
score = "100%";
} else if (numberwrong == 1) {
score = "95%";
} else if (numberwrong == 2) {
score = "90%";
}
document.getElementById("totalscore").innerHTML = score;
}
<p2>Number Incorrect out of 50: </p2>
<input type="number" id="myscore">
<p id="totalscore"></p>
使用 onkeyup
而不是 onkeydown
。在更改输入值之前,您的代码是 运行。
document.getElementById("myscore").onkeyup = function() {
myJsFunction()
};
function myJsFunction() {
var numberwrong = document.getElementById('myscore').value;
if (numberwrong == 0) {
score = "100%";
} else if (numberwrong == 1) {
score = "95%";
} else if (numberwrong == 2) {
score = "90%";
}
document.getElementById("totalscore").innerHTML = score;
}
<p2>Number Incorrect out of 50: </p2>
<input type="number" id="myscore">
<p id="totalscore"></p>
我对制作输出显示有疑问。我的代码大部分都有效,但只有在我删除输入之后。比如我输入“0”没有任何反应,但是我把输入的0删掉后,才会显示“100%”。我试图在输入中输入“0”后立即显示“100%”。需要明确的是,我并不是要制作计算器。除了百分比,我还会输入其他输出。
document.getElementById("myscore").onkeydown = function() {
myJsFunction()
};
function myJsFunction() {
var numberwrong = document.getElementById('myscore').value;
if (numberwrong == 0) {
score = "100%";
} else if (numberwrong == 1) {
score = "95%";
} else if (numberwrong == 2) {
score = "90%";
}
document.getElementById("totalscore").innerHTML = score;
}
<p2>Number Incorrect out of 50: </p2>
<input type="number" id="myscore">
<p id="totalscore"></p>
使用 onkeyup
而不是 onkeydown
。在更改输入值之前,您的代码是 运行。
document.getElementById("myscore").onkeyup = function() {
myJsFunction()
};
function myJsFunction() {
var numberwrong = document.getElementById('myscore').value;
if (numberwrong == 0) {
score = "100%";
} else if (numberwrong == 1) {
score = "95%";
} else if (numberwrong == 2) {
score = "90%";
}
document.getElementById("totalscore").innerHTML = score;
}
<p2>Number Incorrect out of 50: </p2>
<input type="number" id="myscore">
<p id="totalscore"></p>