星风飞行
2015-10-16 16:47
<!DOCTYPE HTML>
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>prompt</title>
<script type="text/javascript">
function rec(){
var score; //score变量,用来存储用户输入的成绩值。
score =prompt("请输入你的成绩");
if(score>=90)
{
document.write("你很棒!");
}
else if(score>=75)
{
document.write("不错吆!");
}
else if(score>=60)
{
document.write("要加油!");
}
else if(score<60)
{
document.write("要努力了!");
}
else if(score==null)
{
document.write("未录入成绩");
}
}
</script>
</head>
<body>
<input name="button" type="button" onClick="rec()" value="点击我,对成绩做评价!" />
</body>
</html>原本代码是 点击取消后,显示的是“要努力了”;我想对直接点击取消的和未录入时点击确定的都有个不同显示,做的尝试如上。
最后一个else if,不管我写成score=null还是score="null"都没有用,显示的还是“要努力了”,请问正确的该怎样写?
如果是将直接点击取消和未录入时点击确定这两种情况分开,各自应该怎么写?
拜托赐教!
prompt() 方法用于显示可提示用户进行输入的对话框。
如果用户单击提示框的取消按钮,则返回 null。如果用户单击确认按钮,则返回输入字段当前显示的文本。
在用户点击确定按钮或取消按钮把对话框关闭之前,它将阻止用户对浏览器的所有输入。在调用 prompt() 时,将暂停对 JavaScript 代码的执行,在用户作出响应之前,不会执行下一条语句。
那么这里要确认是否score为null或者未输入,应该是先判断是否点击了取消按钮或者未录入,如果是的话执行输出未录入,否的话才进行数值判断。
代码如下:
<!DOCTYPE HTML>
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>prompt</title>
<script type="text/javascript">
function rec(){
var score; //score变量,用来存储用户输入的成绩值。
score =prompt("请输入你的成绩");
if(score==null||score==""){
document.write("未录入成绩");
}else {
if (score >= 90) {
document.write("你很棒!");
}
else if (score >= 75) {
document.write("不错吆!");
}
else if (score >= 60) {
document.write("要加油!");
}
else {
document.write("要努力了!");
}
}
}
</script>
</head>
<body>
<input name="button" type="button" onClick="rec()" value="点击我,对成绩做评价!" />
</body>
</html
感觉像是判断的先后问题
JavaScript入门篇
741594 学习 · 9869 问题
相似问题