我正在尝试制作一个相当简单的站点/程序,该站点/程序从输入中接收数字,并使用按钮提交后,根据用户的输入向用户显示一条消息。我觉得好像应该很容易,但是出现了很多错误,例如:无法将属性“ innerHTML”设置为null。当我尝试修复这些错误(在表单上的onsubmit中添加return false ?、更改变量和语法等)时,我感觉好像更加卡住了。我不确定如何使其工作。
(忽略lastInn
函数,因为这是我自己做的事情,只是为了测试我是否可以这样做。)
这是html代码:
<form onsubmit="return false" action="">
<input type="number" name="inputAld" id="inputAld">
<button type="submit" id="trykkAld" disabled="disabled" onsubmit="visAlder();">trykk på meg</button>
</form>
<p id="visHer"></p>
这是javscript文件:
var vis, trykk;
function lastInn() {
var but;
but = document.querySelector("#trykkAld");
but.disabled = false;
}
trykk = document.getElementById("trykkAld");
vis = document.getElementById("visHer");
document.getElementById("visHer").innerHTML ="";
function visAlder() {
var ald;
ald = document.getElementById("inputAld").value;
if (ald > 10) {
vis.innerHTML = "Du er et ungt barn";
}
else if (ald < 10 && ald > 18) {
vis.innerHTML = "Du er en tenåring";
}
else if (ald <= 18 && ald > 30) {
vis.innerHTML = "Du er en ung voksen";
}
else if (ald <= 30 && ald > 60) {
vis.innerHTML = "Du er voksen";
}
else if (ald <= 60 && ald < 70){
vis.innerHTML = "Du begynner å dra på åra"
}
else if (ald <= 70) {
vis.innerHTML = "Du er nok gammel";
}
else {
vis.innerHTML = "Hva faen er du for noe?";
}
}
编辑:我在文档中固定了运算符。
答案 0 :(得分:0)
您的代码在逻辑上看起来是错误的。
else if (ald < 10 && ald > 18) {
vis.innerHTML = "Du er en tenåring";
}
else if (ald <= 18 && ald > 30) {
vis.innerHTML = "Du er en ung voksen";
}
else if (ald <= 30 && ald > 60) {
vis.innerHTML = "Du er voksen";
}
这些都不都是假的吗?
也请尝试将代码包装在文档中。
答案 1 :(得分:0)
我有工作的代码。 visAlder()函数结尾缺少括号。 我认为在表单标签和按钮标签中使用onsubmit都存在问题-它们可能彼此冲突。将您的按钮类型更改为type =“ button”,将您的按钮标记中的onsubmit更改为onclick,并且应该这样做。哦,还要从按钮标签中删除Disabled属性。