Javascript实现和Html表单
嗨,我创建了一个代码,它将帮助我根据开关箱中使用的信息获得权重,当我的单选按钮中的一个是clicked.But时,结果将以Kgs或磅的形式可用,每次当输出显示为NAN.Please引导我犯错误时。
另外,如果你能给我指点最好的方法,.I会感激我,因为我对javascript不熟悉,我会请求你给我指点.Thanks。
<form>
HEIGHT:
<input type=text name="height" id="wt1" onChange="convert(this.form);" onfocus="reset()" placeholder="feet" value="0" />Feet
<br>
<br>
<br>
<br>
<label>
<br>WEIGHT IN Kg:
<input name="weight" id="wt2" type="radio" onClick="convert(this.form);" class="wt" />Kg</label>
<label>
<br>WEIGHT IN Pounds:
<input name="weight" id="wt3" onClick="convert(this.form);" type="radio" class="wt" />Lb</label>
<label>
<br>WEIGHT :
<input name="weight34" type="text" id="wt4" placeholder="Kg/Lb" onfocus="reset()" />
</label>
</form>
<script type="text/javascript">
function convert(form) {
var calweight1;
var calweight2;
var finalcalweight;
var heightvalue;
heightvalue = form.height.value;
if (form.weight[0].checked) {
switch (isNaN(parseInt(heightvalue))) {
case 5.0:
calweight1 = 50 + 2.3 + 5.0 + 1.9;
break;
case 5.1:
calweight1 = 50 + 2.3 + 5.1 + 3.8;
break;
case 5.2:
calweight1 = 50 + 2.3 + 5.2 + 5.4;
break;
}
finalcalweight = Math.round(calweight1);
} else if (form.weight[1].checked) {
switch (isNaN(parseInt(heightvalue))) {
case 5.0:
calweight2 = 106.0 + 5.0;
break;
case 5.1:
calweight2 = 5.1 + 112.0;
break;
case 5.2:
calweight2 = 5.2 + 118.0;
break;
}
finalcalweight = Math.round(calweight2);
}
form.weight34.value = finalcalweight;
}
</script>发布于 2014-03-11 02:24:56
通过快速查看,我可以看到您使用isNaN。注意,它是一个布尔函数,并返回true或false。因此,实际上,您使用的是swtiching true或false,而不是值。所以,这确实是问题所在,这就是固定的问题。
https://stackoverflow.com/questions/22315195
复制相似问题