【JSP】表单提交与表单验证

来源:互联网 发布:上海银行淘宝普卡好吗 编辑:程序博客网 时间:2024/05/18 02:50

几点小结:

(1)使用form表单提交数据,提交后的数据将会在另一个jsp页面进行处理。也可以实现不跳转,同时使用ajax进行局部更新,这里暂不进行说明。

(2)提交表单前需要进行数据验证时,响应在form中onsubmit事件,数据合法则返回true,然后实现页面跳转;数据不合要求则返回false,页面便不会跳转。

(3)要考虑中文参数的传递。由于浏览器,web服务器,数据库等的默认编码不一致,很容易出现中文乱码(参考:解决jsp中文乱码,修改mysql编码)。


以下是一个简单的表单提交与表单验证的例子。

<%@ page language="java" contentType="text/html; charset=UTF-8"    pageEncoding="UTF-8"%><%@ page import="java.util.*" %><%@ page import="java.sql.*" %><!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"><html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>表单提交</title></head><body><p align="center"><b>表单提交</b><br></p><center><div align="left"><table height="60" border="0" align="left"><tr><td><form name="channelform" action="addChannel.jsp" onsubmit="return validate_channel_info(this);" method="post">名字: <input type="text" name="channelname" /><br />ID: <input type="text" name="channelid" /><br /><input type="submit" value="提交"></form></td></tr></table><script type="text/javascript">function validate_channel_info(channelform){if(channelform.channelname.value==""){alert("请输入正确的名字");return false;}else if(!isNumber(channelform.channelid.value)){alert("请输入合法ID");return false;}return true;} function isNumber(str)          // 判断是否为非负整数{var rx = /^[0-9]+$/;return rx.test(str);}</script></div></center></body></html>


原创粉丝点击