我正在尝试构建一个应用程序,该应用程序会提醒用户全名和年龄类别,包括年轻、平均和老年,但无论我输入哪个年龄,它都会显示“您属于年轻类别”。请告诉我我的代码有什么问题。这是:
<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,并且在页面加载时仅设置一次。
您必须使用 document.getElementById
捕获 godine
输入及其每次函数调用的值。
该功能与“Pokreni 程序”按钮
绑定(bind)。每次单击按钮,您都会执行该功能。该函数将从 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>
关于javascript - 变量和 IF/ELSE 语句,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42469314/