变量和IF/ELSE语句
问题描述:
我正在尝试构建一个应用程序,它将提醒用户从年轻,平均和年龄的全名和年龄类别,但无论我输入哪个年龄都会显示“您属于年轻类别” 。请告诉我我的代码有什么问题。那就是:变量和IF/ELSE语句
<script type="text/javascript">
var godine = 25;
var starost;
if (godine < 30) {
starost = " Vi pripadate u kategoriju mladih.";
}
if ((godine >= 30) && (godine < 70)) {
starost = " Vi pripadate u kategoriju srednje starih.";
}
if (godine > 70) {
starost = " Vi pripadate u kategoriju starih";
}
</script>
<h1>Dobro dosli na kategorisanje starosti</h1>
<form action="" name="frmLogin" onsubmit="alert('Korisnice: ' + ' ' + document.frmLogin.txtIme.value + ' ' + document.frmLogin.txtPrezime.value + document.frmLogin.txtStarost.value + starost)">
Korisnicko ime: <input type="text" name="txtIme"/>
<br>
Korisnicko prezime: <input type="text" name="txtPrezime">
<br>
Godine: <input type="text" name="txtStarost">
<br>
<input type="submit" value="Pokreni program">
</form>
答
你被默认设置godine
值25和只有一次时加载的页面。
你必须赶上godine
输入与document.getElementById
它的价值与每个函数调用。
该功能与button
“Pokreni程序”捆绑在一起。每按一下按钮,您将执行该功能。该函数将从godine
输入中加载新值,starost
值将被重置,结果将基于其值。
function check() {
var godine = document.getElementById('godine').value;
var starost;
if (godine < 30) {
starost = "Vi pripadate u kategoriju mladih.";
} else if (godine >= 30 && godine < 70) {
starost = "Vi pripadate u kategoriju srednje starih.";
} else if (godine > 70) {
starost = "Vi pripadate u kategoriju starih";
}
console.log(starost);
}
<h1>Dobro dosli na kategorisanje starosti</h1>
<form action="" name="frmLogin" onsubmit="alert('Korisnice: ' + ' ' + document.frmLogin.txtIme.value + ' ' + document.frmLogin.txtPrezime.value + document.frmLogin.txtStarost.value + starost)">
Korisnicko ime: <input type="text" name="txtIme" />
<br> Korisnicko prezime: <input type="text" name="txtPrezime">
<br> Godine: <input type="text" name="txtStarost" id='godine'>
<br>
<button type="submit" onclick='check()'>Pokreni program</button>
</form>
如果你只使用一个html
文件:
<html>
<head></head>
<body>
<h1>Dobro dosli na kategorisanje starosti</h1>
<form action="" name="frmLogin" onsubmit="alert('Korisnice: ' + ' ' + document.frmLogin.txtIme.value + ' ' + document.frmLogin.txtPrezime.value + document.frmLogin.txtStarost.value + starost)">
Korisnicko ime: <input type="text" name="txtIme" />
<br> Korisnicko prezime: <input type="text" name="txtPrezime">
<br> Godine: <input type="text" name="txtStarost" id='godine'>
<br>
<button type="submit" onclick='check()'>Pokreni program</button>
</form>
<script>
function check() {
var godine = document.getElementById('godine').value;
var starost;
if (godine < 30) {
starost = "Vi pripadate u kategoriju mladih.";
} else if (godine >= 30 && godine < 70) {
starost = "Vi pripadate u kategoriju srednje starih.";
} else if (godine > 70) {
starost = "Vi pripadate u kategoriju starih";
}
console.log(starost);
}
</script>
</body>
</html>
因为你设置了'godine = 25'。 “如果(godine
是的,但如果我把75它仍然是一样的。我也尝试了一个空变量。 – user3638147
还要注意,你可能应该在这里使用'if else'。即使它与当前的逻辑无关,如果有人重构它可能会导致错误。 –