题目:从input.jsp端输入a和b值(客户端验证,输入值必须为实数值,且可带±号),然后传到add.jsp进行求和输出a+b值。
前端代码
<head>
<link rel="stylesheet" type="text/css" href="style.css">
<script>
function checkFloat(value)
{ var reg=/^(\+|-)?\d+($|\.\d+$)/; if (reg.test(value)) return true; else return false; }
function check(obj)
{ if (!checkFloat(obj.value))
if(obj.name=="v1") document.getElementById("e1").innerHTML="请输入实数";
else document.getElementById("e2").innerHTML="请输入实数";
else
if(obj.name=="v1") document.getElementById("e1").innerHTML="OK";
else document.getElementById("e2").innerHTML="OK";
}
</script>
</head>
<body>
<form action="servlet/sum" method=post>
<div class="int">
<label>a:</label> <input type="text" name="v1" οnblur="check(this)"> <span id="e1">请输入实数</span>
</div>
<div class="int">
<label>b:</label> <input type="text" name="v2" οnblur="check(this)"> <span id="e2">请输入实数</span>
</div>
<div class="sub">
<input type="submit" value="确认">
</div>
</form>
</body>
后台实现
public void doPost(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
response.setContentType("text/html;charset=gb2312");
PrintWriter out = response.getWriter();
float a=Float.parseFloat(request.getParameter("v1"));
float b=Float.parseFloat(request.getParameter("v2"));
out.println("a:"+a+"<br/>");
out.println("b:"+b+"<br/>");
out.print("a+b的值为:"+(a+b));
out.flush();
out.close();
}