我正在尝试构建一个应用程序,该应用程序将提醒用户年龄,平均年龄和老年年龄的全名和年龄类别,但是无论我键入哪个年龄段,它都会显示“您属于年轻人类别”。请告诉我我的代码有什么问题。这里是:
<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>
关于javascript - 变量和IF/ELSE语句,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/42469314/