Java EE---表单开发

(一)什么是表单

表单是将用户输入的信息封装提交给服务器,实现与用户的交互。表单是用<form>标签定义的,它类似于一个容器,表单对象必须在表单中才能有效,语法:                                                                                                                                  

表单的作用:

●表单中可以输入一些内容,这些输入功能由控件提供,叫做表单元素;

●表单中一般都有一个按钮负责提交;点击提交按钮,表单元素中的内容会提交给服务器端;

●表单元素放在<form></form>之间。

扩展:

method属性:用于指定哪种方法提交表单数据提交到服务器。默认情况下是get。

get方法将表单内容附在URL地址后面,因此有长度限制(最大8192个字符),而且不安全。

post方法将用户在表单中输入的数据包含在表单主体中,一起提交给服务器,该方法没有信息长度限制,也比较安全。

(1)文本框与密码框

<form>
    姓名:<input type="text" value="" name="userName"/>
    <br>
    密码:<input type="password" value="123456" name="pwd"/>
</form>

(2)单选框与复选框
语法:

<input type="radio" value="单选按钮的值" name="单选按钮的名称" checked>
<form>
 <input type="radio" value="male" name="sex" checked>男
  <input type="radio" value="female" name="sex" >女

</form>

 

<form>
 <input type="checkbox" value="zhangsan" name="lover" checked>张三
  <input type="checkbox" value="lisi" name="lover" >李四
  <input type="checkbox" value="wangwu" name="lover" checked>王五
</form>

(3)按钮

语法:

<form>
<input type="reset" value="按钮的值" name="按钮的名称">重置
  <input type="reset" value="按钮的值" name="按钮的名称">提交
</form>

<form>
姓名:<input type="text" name="userName"/><br>
  <input type="submit" value="提交">
  <input type="reset" value="重置">
  <input type="button" value="关闭" onclick="window.close()"/>
</form>

 (4)文件域:上传文件或照片功能

语法:

<input type="file" name="文件域的名称">

<form action="" enctype="multipart/form-data">
你的靓照:<input type="file" name="fileName"/>

</form>

 (5)下拉列表

语法:

<select name="下拉列表道德名称" size="显示的项数" multiple>
    <option value="选项值1" selected>选项1显示内容</option>
    <option value="选项值2" selected>选项2显示内容</option>
</select>

size用来设定列表在页面中最多现实的项数,当超过这个值时就会出现滚动条。

multiple表示。列表可以进行多项选择。selected是被选中的

 

<select name="下拉列表道德名称" size="显示的项数" multiple>
    <option value="beijing" selected>北京</option>
    <option value="shanghai" selected>上海</option>
    <option value="guangzhou" >广州</option>
    <option value="shenzhen" >深圳</option>
</select>

 (6)文本区:用来输入多行文本

语法:

<textarea name="文本区的名称" cols="列数" rows="行数"></textarea>

cols用于设定文本区的列数,也就是宽度;rows用于设定文本区的行数,也就是高度,当文本区内容超出这一范围时会出现滚动条。

<textarea name="texts" cols="10" rows="10"></textarea>

(二)表单定义、元素值获取

表单一般格式:

表单元素值的获取

用一般按钮取代“提交”按钮的方法

(1)单行文本框数据的获取

<form action="textForm_result.jsp">
	请您输入学生的模糊资料:<BR>
	<input name="stuname" type="text">
	<input type="submit" value="查询">
</form>
<%
	String stuname = request.getParameter("stuname");
	out.println("输入的查询关键字为:" + stuname);
%>

说明:

省略method属性,默认为get方式,在地址栏可见表单元素的取值,不够安全; post可弥补get的不足;输入汉字,也可能出现乱码。

(2)多行文本框数据的获取

<form action="textareaForm_result.jsp" method="post">
       请您输入账号:<input name="account" type="text">
       请您输入密码:<input name="password" type="password">
       请您输入个人信息:<textarea name="info" rows="5" cols="30"></textarea>
       <input type="submit" value="注册">
</form>
<%
	String info = request.getParameter("info");
	out.println("个人信息为:" + info);
%>

 (3)单选钮数据的获取(通常为一组互斥选项中选一个)

<form action="radioForm_result.jsp" method="post">
		请您输入账号:<input name="account" type="text"><BR>
		请您输入密码:<input name="password" type="password"><BR>
		请您选择性别:
		<input name="sex" type="radio" value="boy" checked>男
		<input name="sex" type="radio" value="girl">女<BR>
		<input type="submit" value="注册">
</form>
<%
		String sex = request.getParameter("sex");
		out.println("性别为:" + sex);
%>

说明:所得的选项值不是显示“男”或“女”,而是value的值"boy"”或"girl”,若不指定value值,则为“on”;加上checked,则为默选项。

(4)下拉列表框数据的获取

<form action="selectForm_result.jsp" method="post">
	请您输入账号:<input name="account" type="text"><BR>
	请您输入密码:<input name="password" type="password"><BR>
	请您选择家乡:
	<select name="home">
		<option value="beijing">北京</option>
		<option value="shanghai">上海</option>
		<option value="guangdong">广东</option>
	</select>	
	<input type="submit" value="注册">
</form>
<%            String home = request.getParameter("home");
	out.println("家乡为:" + home);                                      
%>

说明:所得的选项值不是显示“北京”、“上海”、”广东” 而是value的值”beijing”'、”shanghai”、“guangdong”,若不指定value值,则为显示值。

(5)表单注意事项

<script type="text/javascript">
	function validate(){
		if(loginForm.account.value==""){
			alert("账号不能为空!");
			return;
		}
		if(loginForm.password.value==""){
			alert("密码不能为空!");
			return;
		}
		loginForm.submit();
	}
</script>
<form name="loginForm" action="target.jsp " method="post">
	......		
                <input type="button" value="登录" onClick="validate()">	
</form>

 

(6)同名表单元素 

同名表单元素及其值的获取方法什么是同名表单元素? 就是指同一个表单中,多个表单元素的名称相同。 在特定环境中,同名表单元素有意义,例如:填写兴趣、爱好

<input name="fav" type="checkbox" value="sing">唱歌
<input name="fav" type="checkbox" value="dance">跳舞
<input name="fav" type="checkbox" value="ball">打球
<input name="fav" type="checkbox" value="game">打游戏

同名表单元素值的获取方法

同名表单元素包括:复选框、多选列表框、其他同名表单元素等 

获取复选框组的数据

<form action="checkForm_result.jsp" method="post">
	请您选择您的爱好:
	<input name="fav" type="checkbox" value="sing">唱歌
	<input name="fav" type="checkbox" value="dance">跳舞
	<input name="fav" type="checkbox" value="ball">打球
	<input name="fav" type="checkbox" value="game">打游戏<BR>
	<input type="submit" value="注册">
</form>
<%
	String[] fav = request.getParameterValues("fav");
	out.println("爱好为:");
	for(int i=0;i<fav.length;i++){
		out.println(fav[i]);
	}
%>

说明:各选项写入checked,表示选定;(2)若选项未指定value值,则默认为on。

(7)隐藏表单元素

说明:()隐藏表单元素不会在浏览器上显示,但可以通过 request.getParameter("参数名”)方法得到,通过这一方式可以在页与页之间传递信息;(2)在源代码上可以看见,有一定安全隐患 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值