日期:2014-05-16  浏览次数:20417 次

登陆界面在文本框后面提示错误的问题
<%@ page contentType="text/html; charset=gb2312" language="java" import="java.sql.*" errorPage="" %>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312" />
<title>无标题文档</title>
<script language="javascript">
function login()
{ var use=document.form1.username.value;
  var pass=document.form1.password.value;
  
 if(use=="123"&&pass=="aaa")
  {alert("正确")
  }
 else
  { var name=document.getElementById("good");
  name.innerHTML="用户名错误";
//name.style.background.="red";
  return false;
  }
  

}
</script>
</head>

<body>
<form method="post" name="form1" onsubmit="return login()">
  <p>用户名: <input name="username" type="text"><span id="good"><span></p>
  <p>密&nbsp;码: <input name="password" type="password"></p>
  <p>
  <input type="submit" name="submit" value="提交">
<input type="reset" name="submit" value="重置">
  </p>
<form>
</body>
</html>

上面的代码是实现当单击“提交”按钮,调用login(),当密码不正确时在name="username"的文本框的右边弹出红色字体的"用户名错误"
但是这儿当密码错误时,"用户名错误"没有显示成红色字体,并且密码框也消失了,这儿该怎么改进????



------解决方案--------------------
很简单,你的span标签结束标志少了一个斜杠,加上就可以了。没有斜杠的话,浏览器以为从<span>开始到见到</span>结束都是span的内容。
HTML code
<span id="good"></span>