操作过程:弹出输入框的时候什么都不写(也就是留空白),然后点击确定(不是取消不让他返回null)。
输出结果:else if(score>=0&&score!=null)里的输出语句和else(score==null)里的输出语句都直接输出,就是说这种情况是怎么回事,是我的选择结构不够严谨吗?还有如何避免她呢?毕竟真实用户在操作的时候是完全可以存在这种操作的的,如果输出结果这么奇葩那不是凉凉。
我是这样解决的,你看看
<!DOCTYPE HTML>
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>confirm</title>
<script type="text/javascript">
function rec(){
var score=prompt("你的分数为:") ;
if(score==null||score=="")
{
alert("分数为空,请重新输入!");
return;
}
else if (score>=90)
{
document.write("优秀!");
}
else if(score>=60 && score<=90)
{
document.write("良好");
}
else if(score<60)
{
document.write("要加油啊");
}
}
</script>
</head>
<body>
<input name="button" type="button" onClick="rec()" value="点击我,弹出确认对话框" />
</body>
</html>