由于某种原因,它没有验证isNan代码,你们可以帮帮我吗?但是它验证了非空条件,但是当我插入字母时没有出现任何弹出
<html>
<head>
<script type='text/javascript'>
function resultado()
{
if(massa.peso.value=="") || (isNaN(massa.peso.value)==false))
alert("Preencha a peso");
if(massa.altura.value=="") || (isNaN(massa.altura.value)==false))
alert("Preencha a altura");
}
</script>
</head>
HTML:
<body>
<h1>INDICE MASSA CORPORAL</h1>
<form name="massa">
Peso: <input type="text" name="peso">
Altura: <input type="text" name="altura">
<input type="submit" value="Confirmar" onclick="resultado()">
<input type="reset" value="Limpar">
</form>
</body>
</html>
答案 0 :(得分:0)
我明白了,你正在检查isNaN是否为假而非真实 如果参数不是数字,则isNaN将返回true,如果是数字,则返回false。
我认为它完全正常(当然有括号)。请找到plunker链接https://plnkr.co/edit/rbu7sFhJoKJuFgFqDoFY
function resultado()
{
if((massa.peso.value=="") || (isNaN(massa.peso.value)==true))
console.log("Preencha a peso");
if((massa.altura.value=="") || (isNaN(massa.altura.value)==true))
console.log("Preencha a altura");
}
<body>
<h1>INDICE MASSA CORPORAL</h1>
<form name="massa">
Peso: <input type="text" name="peso" />
Altura: <input type="text" name="altura" />
<input type="submit" value="Confirm" onclick="resultado()" />
<input type="reset" value="Limpar" />
</form>
</body>
答案 1 :(得分:0)
为了回应你弄乱你的情况的另一个答案,它应该是
(massa.peso.value=="") || (isNaN(massa.peso.value)==true)
要添加,您还在使用提交事件,不确定您想要什么,但如果只是前端验证,您可能想要将按钮更改为常规按钮或更改onsubmit事件的默认操作
答案 2 :(得分:0)
function resultado(){
let peso = document.getElementsByName("peso")[0]
, altura = document.getElementsByName("altura")[0];
if( !peso.value ){
alert("Preencha a peso");
return;
}
if( !altura.value ){
alert("Preencha a altura");
return;
}
}
<h1>INDICE MASSA CORPORAL</h1>
<form name="massa">
Peso: <input type="text" name="peso" />
Altura: <input type="text" name="altura" />
<input type="submit" value="Confirmar" onclick="resultado()">
<input type="reset" value="Limpar">
</form>