新人求教jsp页面中使用 hidden属性的方法

Dino系我 2015-01-12 04:14:16
在同一页面 先输入后展示,在输入的表单提交之前展示部分不显示出来,提交之后就展示出来了。本人不会js,请教大家不用js怎么实现,下面是我的代码,但是一访问全部都展示出来了
<%@ page contentType="text/html;charset=utf-8" %>
<%@ page import="com.dino.srv.*" %>
<html>
<head>
<title>
login
</title>
</head>
<body>
<form action="" name=form method="post">
<table>
<tr>
<td><span>姓名</span></td>
<td><input type="text" name ="name" size="30"> </td>
</tr>
<tr>
<td><span>性别</span></td>
<td><input type="text" name ="gender" size="30"> </td>
</tr>
<tr>
<td><span>学号</span></td>
<td><input type="text" name ="number" size="30"> </td>
</tr>
<tr>
<td><span>身高</span></td>
<td><input type="text" name ="height" size="30"> </td>
</tr>
<tr>
<td><span>体重</span></td>
<td><input type="text" name ="weight" size="30"> </td>
</tr>
<tr>
<td><span></span></td>
<td align="right"><input type="submit" name= "submit" value="提交">
         </td>
</tr>
</table>
</form>

<form>

<jsp:useBean id="students" class="com.dino.srv.students" />

<jsp:setProperty name="students" property="*"/>
<p>姓名是:
<jsp:getProperty name="students" property="name" />
<p>学号是:
<jsp:getProperty name="students" property="number" />
<p>性别是:
<jsp:getProperty name="students" property="gender" />
<p>身高是:
<jsp:getProperty name="students" property="height" />
<p>体重是:
<jsp:getProperty name="students" property="weight" />
<br>
<% String isSubmit= request.getParameter("submit");
//out.print(isSubmit);
if(isSubmit ==null){%>
<input type="hidden" name="isSubmit" value="yes" >;
<% }
%>
</form>
</body>
</html>
...全文
2011 8 打赏 收藏 转发到动态 举报
写回复
用AI写文章
8 条回复
切换为时间正序
请发表友善的回复…
发表回复
Dino系我 2015-01-17
  • 打赏
  • 举报
回复
引用 4 楼 q75822144 的回复:
思路,加一个隐藏属性的标记变量,提交改变值为满足条件。代码如下:
<body>
    <%String flag = request.getParameter("flag"); %>
    <form id="f1" action="">
    <%if(flag!=null && flag.equals("yes")){ %>
    	<input type="text" id="h" name="h" value="aaaaaaaa"/>
    <%} %>
    	<input type="hidden" id="flag" name="flag"/>
    	<input type="button" onclick="fun()" value="onclick"/>
    </form>
  </body>
  <script>
  	function fun(){
  		var f = document.getElementById("f1");
  		var flag = document.getElementById("flag");
  		flag.value="yes";
  		f.submit();
  	}
  </script>
挺有用的哈 谢谢呀
Dino系我 2015-01-17
  • 打赏
  • 举报
回复
引用 5 楼 u010125873 的回复:
你第二个表单应该是根据前一个表单的数据是否入库来决定是否显示的吧,直接后台返回一个值,根据值判断显示什么,也可以把提交后没入库的错误提示显示出来的
恩恩 是的 确实是这个意思 我把返回的整个表单都加进了判断弄出来了 想要更好地方法可能真的是要去看看js
星涯无痕 2015-01-13
  • 打赏
  • 举报
回复
你第二个表单应该是根据前一个表单的数据是否入库来决定是否显示的吧,直接后台返回一个值,根据值判断显示什么,也可以把提交后没入库的错误提示显示出来的
  • 打赏
  • 举报
回复
思路,加一个隐藏属性的标记变量,提交改变值为满足条件。代码如下:
<body>
    <%String flag = request.getParameter("flag"); %>
    <form id="f1" action="">
    <%if(flag!=null && flag.equals("yes")){ %>
    	<input type="text" id="h" name="h" value="aaaaaaaa"/>
    <%} %>
    	<input type="hidden" id="flag" name="flag"/>
    	<input type="button" onclick="fun()" value="onclick"/>
    </form>
  </body>
  <script>
  	function fun(){
  		var f = document.getElementById("f1");
  		var flag = document.getElementById("flag");
  		flag.value="yes";
  		f.submit();
  	}
  </script>
星涯无痕 2015-01-13
  • 打赏
  • 举报
回复
给你两个思路吧,第一种:用c:if标签包住一个form,当第一个表单提交成功后,通过后台返回一个参数,用<c:if test="${ key == true}">去判断是否显示下面的表格。 第二种就是通过js控制了,在后面那个form表单上加上hidden属性,js中控制表单提交,用ajax提交,ajax提交返回结果后根据结果做出判断,再隐藏第一个表单,显示第二个表单。 form表单可用jquery.form.js插件做
Ansel-枫儿-Moe 2015-01-12
  • 打赏
  • 举报
回复
你的意思是提交之前下面的那个form里面的内容不显示,提交之后显示?
Dino系我 2015-01-12
  • 打赏
  • 举报
回复
package com.dino.srv;

import java.io.UnsupportedEncodingException;

public class students {

	
	private String name =null;
	private String gender=null;
	private String number=null;
	private String height=null;
	private String weight=null;
	
	public String getName() {
		
		return name;
	}
	public void setName(String name) {
		if(name== null )
			name="未输入名字";
		try {
			this.name = new String(name.getBytes("iso-8859-1"),"utf-8");
		} catch (UnsupportedEncodingException e) {
			// TODO Auto-generated catch block
			e.printStackTrace();
		}
	}
	public String getGender() {
		return gender;
	}
	public void setGender(String gender) {
		this.gender = gender;
	}
	public String getNumber() {
		return number;
	}
	public void setNumber(String number) {
		boolean status =false;
		byte[]b= number.getBytes();
		for(byte k:b){
			if(((k < 48) || (k > 57)) && (k != 8 || k != 0)){	
				//status=true; System.out.println(k+" "+status);
			}
		}
		if(!status)
			this.number = number;
	}
	public String getHeight() {
		return height;
	}
	public void setHeight(String height) {
		this.height = height;
	}
	public String getWeight() {
		return weight;
	}
	public void setWeight(String weight) {
		this.weight = weight;
	}
}
这是我的jjavaBean代码

81,091

社区成员

发帖
与我相关
我的任务
社区描述
Java Web 开发
社区管理员
  • Web 开发社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧