初学者javascripter在这里,我非常潜伏着这个网站,它帮助了我很多次。 我已经编写了几天,并决定创建一个BMI计算器作为测试项目。 计算器工作正常,但是当添加return false语句或尝试在同一个按钮上完成两个函数时,我似乎遇到了问题。 这是我的代码:
<script language="JavaScript">
<!--
function BMIstuff() {
BMIValidate(
If(document.bmiForm.name.value.length <= 0) alert("please enter a name"); If(document.bmiForm.name.value = /^[a-zA-Z]+$/;) {
return true;
} else {
aert("Please enter a name with valid characters")
BMI Calculate(
if (document.bmiForm.weight.value.length < 1 || document.bmiForm.weight.value.length >= 4)
alert("enter a valid weight");
if (document.bmiForm.height.value.length < 1 || document.bmiForm.height.value.length >= 5)
alert("enter a valid height");
if (document.bmiForm.weight.value < 50 || document.bmiForm.weight.value >= 260)
alert("enter a valid weight value");
if (document.bmiForm.height.value < 1 || document.bmiForm.height.value >= 5)
alert("enter a valid height value");
return false;
var weight = document.bmiForm.weight.value
var height = document.bmiForm.height.value
if (weight > 0 && height > 0) {
var finalBmi = weight / (height * height)
document.bmiForm.bmi.value = finalBmi
if (finalBmi < 18.5) {
document.bmiForm.meaning.value = "You are underweight"
}
if (finalBmi > 18.5 && finalBmi <= 24.9) {
document.bmiForm.meaning.value = "You are in a healthy weight range"
}
if (finalBmi > 25 && finalBmi <= 29.9) {
document.bmiForm.meaning.value = "You are overweight"
}
if (finalBmi > 30) {
document.bmiForm.meaning.value = "You are obese"
}
} else {
alert("Please ensure that your height and weight are in a valid range, also, ensure that you are not using any invalid symbols or characters. ")
)
}
}
//-->
</script>
<h1> BMI Calculator </h1>
<form name="bmiForm">
Enter your Name:
<input type="text" name="name" size="25">
<br />Height(m):
<input type="text" name="height" size="10">
<br />Weight(kg):
<input type="text" name="weight" size="10">
<br />
<input type="button" value="Calculate BMI" onClick="BMIstuff()">
<br />Your BMI:
<input type="text" name="bmi" size="10">
<br />What does this mean?
<input type="text" name="meaning" size="45">
<br />
<input type="reset" value="Reset" />
</form>
对于大量代码,道歉并不确定为了纠正错误而没有必要。 谢谢你。
答案 0 :(得分:0)
三个代码破坏者:
If
:不存在,请使用小写if
BMI Calculate(
:函数名称中没有空格aert
:不存在,应为alert
如果您在浏览器中打开了Dev控制台,则会注意到所有这些错误。
另外,就像安德鲁在评论中指出的那样,你错过了很多分号。虽然Javascript通常可以在没有它们的情况下工作,但这是一个非常糟糕的做法而且你不想让它成为习惯。