在我的表格上,我有一些输入,我想总结一下。
<input class="soma" maxlength="1" type="number" />
<input class="soma" maxlength="1" type="number" />
<input class="soma" maxlength="1" type="number" />
...
我的jQuery脚本总结:
$(document).ready(function(){
$('#mostrar_resultado').click(function() {
var valor = 0;
$('.soma').each(function(i){
valor = parseInt($(this).val()) + valor ;
});
if (valor >= 10){
$('#resposta').html("Sonolência excessiva diurna, deve ser investigada. Procure um médico!")
} else if (valor <=9){
$('#resposta').html("Você não possui sonolência excessiva diurna!")
}
if (valor == 0){
$('#resposta').html("");
$('.recebe_valor').val("0");
}
})
});
我的问题是什么:
如果用户没有填写字段,我想显示一些文本,如果all的总和大于或等于10,则显示另一个文本;如果总和小于10且大于或等于1,则我想显示另一个文本。
目前我的IF/ELSE
不是那样的!
如何像我的描述一样解决这个问题?
答案 0 :(得分:2)
您应该了解parseInt的工作原理。
默认基数为10,但无论如何最好指定它。
如果解析失败,结果为NaN
。将其添加到任意数字将导致NaN
。
>>> parseInt("5")
5
>>> parseInt("")
NaN
>>> parseInt("",10)
NaN
>>> parseInt("a")
NaN
>>> parseInt("a",16)
10
>>> val = parseInt("5")
5
>>> val += parseInt("")
NaN
因此,您可以使用valor
检查NaN
是否为isNaN()
,或者您可以设置标记并仅计算有效输入。
我创建了一个草图here。