怎样根据下拉框的选择,跳转到不同的jsp页面上

nian86 2004-12-14 10:57:44
第一个页面下拉框有上海、北京两选项
第二个页面用:request.getParameter("XXXX")方法读是北京还是上海
第三个页面要根据选择,执行beijing.jsp或shanghai.jsp
这第三步怎样实现?


...全文
1099 6 打赏 收藏 转发到动态 举报
写回复
用AI写文章
6 条回复
切换为时间正序
请发表友善的回复…
发表回复
nian86 2004-12-16
  • 打赏
  • 举报
回复
这样,我想细说一下:
1.jsp:
</p><p align="center">
波源类型【5种波形】:
<select name="areaa" style="width"50" size="1">
<option value="阶跃" selected > 阶跃 </option>
<option value="速度" > 速度 </option>
<option value="加速度" > 加速度 </option>    
</select>

波形颜色:
<select name="area" style="width"50" size="1">
<option value="蓝色" selected > 蓝色 </option>
<option value="红色" > 红色 </option>
目的:用户选择输入波形,绘图颜色
2.jsp:
您输入颜色是: <%out.println(request.getParameter("area")+"<br>");%>
您输入波源类型是: <%out.println(request.getParameter("areaa")+"<br>");%>
<%
String e;
String d;
String f;
String g;
String h;
String t1;
e=1+","+request.getParameter("shu1")+","+request.getParameter("shu2")+","+request.getParameter("shu3");
t1=request.getParameter("shu1");
d=request.getParameter("shu2");
f=request.getParameter("shu3");
g=request.getParameter("area");
h=request.getParameter("areaa");
BufferedWriter fileoutzq=new BufferedWriter(new OutputStreamWriter(new FileOutputStream("c:\\myJSP\\djbhzq.txt")));
BufferedWriter fileout=new BufferedWriter(new OutputStreamWriter(new FileOutputStream("c:\\myJSP\\djbh.txt")));
BufferedWriter fileouttime=new BufferedWriter(new OutputStreamWriter(new FileOutputStream("c:\\myJSP\\djbhtime.txt")));
BufferedWriter fileoutvot=new BufferedWriter(new OutputStreamWriter(new FileOutputStream("c:\\myJSP\\djbhvot.txt")));
BufferedWriter fileoutcolor=new BufferedWriter(new OutputStreamWriter(new FileOutputStream("c:\\myJSP\\djbhcolor.txt")));
BufferedWriter fileoutxin=new BufferedWriter(new OutputStreamWriter(new FileOutputStream("c:\\myJSP\\djbhxin.txt")));
fileoutzq.write(t1,0,t1.length());
fileout.write(e,0,e.length());
fileouttime.write(d,0,d.length());
fileoutvot.write(f,0,f.length());
fileoutcolor.write(g,0,g.length());
fileoutxin.write(h,0,h.length());
fileoutzq.close();
fileout.close();
fileouttime.close();
fileoutvot.close();
fileoutcolor.close();
fileoutxin.close();
%>
将上一页,用户的选择,写入服务器端:djbhcolor.txt.
....并显示用户的选择,当确认后,进入3.jsp
3.jsp:
<jsp:include page="djbh.html" flush="true"/>
</jsp:include>
</jsp:plugin>
包含一个html,内嵌applet,根据输入波形的不同,显示不同的html:
即:djbh.html或djbh2.html或djbh3.html
现在怎样能根据波形的不同去对应相应的html?
阶跃-------------djbh.html
速度-------------djbh2.html
加速度------------djbh3.html
nian86 2004-12-14
  • 打赏
  • 举报
回复
up
nian86 2004-12-14
  • 打赏
  • 举报
回复
我在第二页放了:<%out.println(request.getParameter("城市")+"<br>");%>
来读北京、上海到
第三页:原本:<jsp:include page="djbh.html" flush="true"/>
</jsp:include>
</jsp:plugin>
现要根据第二页的::<%out.println(request.getParameter("areaa")+"<br>");%>
把第三页变成::<jsp:include page="beijing.html" flush="true"/>
</jsp:include>
</jsp:plugin>
或::<jsp:include page="shanghai.html" flush="true"/>
</jsp:include>
</jsp:plugin>
请详细说一下,另外,我的汉字也都显示乱码。
<%@ page contentType="text/html;charset=gb2312" %>
<%request.setCharacterEncoding("GB2312");%>
都不行
0242891 2004-12-14
  • 打赏
  • 举报
回复
如果是直接跳转的话用JAVASCRIPT来完成
<%
if (北京){
%>
<script>
document.location="北京.jsp";
</script>
<%if (上海){
%>
<script>
document.location="上海.jsp";
</script>

<%}
%>
loverface 2004-12-14
  • 打赏
  • 举报
回复
没有必须这样做吧。用JS就可以实现了。
如果要这样做的话
if(北京) response.sendRedirect("beijing.jsp");
else if(上海) response.sendRedirect("shanghai.jsp");
bit1023 2004-12-14
  • 打赏
  • 举报
回复
用下拉框的 onChange 事件,再加上JS肯定可以实现的
<html:select onChange="javascript:select(this.form)" name="myselect">
<html:option value="1">北京</html:option>
<html:option value="2">上海</html:option>
<html:select>
<script>
function select(form){
if(form..myselect.value==1){
form.action="../beijing.jsp"
from.submit()
return true
}

}
</script>
/* * @(#)PageControl.java 1.00 2004-9-22 * * Copyright 2004 2004 . All rights reserved. * PROPRIETARY/CONFIDENTIAL. Use is subject to license terms. */ package com.hexiang.utils; /** * PageControl, 分页控制, 可以判断总页数和是否有上下页. * * 2008-07-22 加入输出上下分页HTML代码功能 * * @author HX * @version 1.1 2008-9-22 */ public class PageBean { /** 每页显示记录数 */ private int pageCount; /** 是否有上一页 */ private boolean hasPrevPage; /** 记录总数 */ private int recordCount; /** 是否有下一页 */ private boolean hasNextPage; /**总页面数 */ private int totalPage; /** 当前页码数 */ private int currentPage; /** * 分页前的页面地址 */ private String pageUrl; /** * 输出分页 HTML 页面跳转代码, 分链接和静态文字两种. * 2008-07-22 * @return HTML 代码 */ public String getPageJumpLinkHtml() { if(StringUtil.isEmpty(pageUrl)) { return ""; } // 检查是否有参数符号, 没有就加上一个? if(pageUrl.indexOf('?') == -1) { pageUrl = pageUrl + '?'; } StringBuffer buff = new StringBuffer(""); // 上一页翻页标记 if(currentPage > 1) { buff.append("[ 上一页 ] "); } else { buff.append("[ 上一页 ] "); } // 下一页翻页标记 if(currentPage < getTotalPage()) { buff.append("[ 下一页 ] "); } else { buff.append("[ 下一页 ] "); } buff.append(""); return buff.toString(); } /** * 输出页码信息: 第${currentPage}页/共${totalPage}页 * @return */ public String getPageCountHtml() { return "第" + currentPage + "页/共" + getTotalPage() + "页"; } /** * 输出 JavaScript 跳转函数代码 * @return */ public String getJavaScriptJumpCode() { if(StringUtil.isEmpty(pageUrl)) { return ""; } // 检查是否有参数符号, 没有就加上一个? if(pageUrl.indexOf("?") == -1) { pageUrl = pageUrl + '?'; } return "<script>" + "// 页面跳转函数\n" + "// 参数: 包含页码的表单元素,例如输入框,下拉框等\n" + "function jumpPage(input) {\n" + " // 页码相同就不做跳转\n" + " if(input.value == " + currentPage + ") {" + " return;\n" + " }" + " var newUrl = '" + pageUrl + "&page=' + input.value;\n" + " document.location = newUrl;\n" + " }\n" + " 跳转的选择框和输入框. 示例输出: *
转到
	  
      
      输入页码: 
           
* @return */ public String getPageFormJumpHtml() { String s = "转到\n" + "\t \n" + " \n" + " 输入页码: \n" + " 跳转\" onclick=\"jumpPage(document.getElementById('jumpPageBox'))\"> "; return s; } /** * 进行分页计算. */ private void calculate() { if (getPageCount() == 0) { setPageCount(1); } totalPage = (int) Math.ceil(1.0 * getRecordCount() / getPageCount()); // 总页面数 if (totalPage == 0) totalPage = 1; // Check current page range, 2006-08-03 if(currentPage > totalPage) { currentPage = totalPage; } // System.out.println("currentPage=" + currentPage); // System.out.println("maxPage=" + maxPage); // // Fixed logic error at 2004-09-25 hasNextPage = currentPage < totalPage; hasPrevPage = currentPage > 1; return; } /** * @return Returns the 最大页面数. */ public int getTotalPage() { calculate(); return totalPage; } /** * @param currentPage * The 最大页面数 to set. */ @SuppressWarnings("unused") private void setTotalPage(int maxPage) { this.totalPage = maxPage; } /** * 是否有上一页数据 */ public boolean hasPrevPage() { calculate(); return hasPrevPage; } /** * 是否有下一页数据 */ public boolean hasNextPage() { calculate(); return hasNextPage; } // Test public static void main(String[] args) { PageBean pc = new PageBean(); pc.setCurrentPage(2); pc.setPageCount(4); pc.setRecordCount(5); pc.setPageUrl("product/list.do"); System.out.println("当前页 " + pc.getCurrentPage()); System.out.println("有上一页 " + pc.hasPrevPage()); System.out.println("有下一页 " + pc.hasNextPage()); System.out.println("总页面数 " + pc.getTotalPage()); System.out.println("分页 HTML 代码 " + pc.getPageJumpLinkHtml()); } /** * @return Returns the 当前页码数. */ public int getCurrentPage() { return currentPage; } /** * 设置当前页码, 从 1 开始. * @param currentPage * The 当前页码数 to set. */ public void setCurrentPage(int currentPage) { if (currentPage <= 0) { currentPage = 1; } this.currentPage = currentPage; } /** * @return Returns the recordCount. */ public int getRecordCount() { return recordCount; } /** * @param recordCount * The recordCount to set. */ public void setRecordCount(int property1) { this.recordCount = property1; } /** * @return Returns the 每页显示记录数. */ public int getPageCount() { return pageCount; } /** * @param pageCount * The 每页显示记录数 to set. */ public void setPageCount(int pageCount) { this.pageCount = pageCount; } public String getPageUrl() { return pageUrl; } public void setPageUrl(String value) { pageUrl = value; } }
风越.net代码生成器 [FireCode Creator] 是一款采用.Net FrameWork2.0框架、基于多种数据库的程序代码生成软件,可快速建立数据信息的:添加、编辑、查看、列表、搜索功能。默认提供asp、aspx WEB程序、.net普通三层框架程序、.net Windows程序,多种代码框架及多个界面设计模板,均可任意修改管理。通过自定义生成程序的界面风格与输出代码,用户可将其扩展为ASPX/ASP/PHP/JSP等各种程序的代码生成器。内置的.net代码框架,能建立C#语言的.net解决方案,可在VS2005中直接编辑,既能帮助.net初学者快速入门,更可最大限度提高.net程序员的代码编写效率。 01、支持生成的ASPX/ASP/PHP/JSP等页面在本机自动发布、调试(需安装IIS或对应WEB服务器) 02、支持Microsoft SQL Server、Microsoft Access、Oracle、MySql、Excel、FoxPro、FoxBase、Text等数据库连接 03、支持从数据表、视图(Access为查询)中读取数据字段 04、支持通过数据表中的组合主键传递参数 05、支持CSS统一设置页面风格 06、支持多种控件输入方式: 文本框 文本域 UBB文本框(支持UBB文本输入) 密码框 隐藏域 日期选择 单选框 复选框 下拉框 多选列表 单选列表 批量上载 上载文件 上载到库 07、支持多种信息显示方式: 显示文字 链接文件 文本框 文本域 显示图片 背景声音 视频播放 显示flash 08、支持检测提交字符的最小、最大输入长度、是否空值/唯一值、文本类型:★ 不检测 非特殊字符 仅单词字符 仅单词字符空格 仅26个字母 仅中文字符 仅允许整数 仅允许小数 仅日期/时间 仅日期+时间 仅日期 仅时间 仅允许邮箱 仅允许网址 仅允许IP 仅身份证号 仅国内电话 仅国内手机 09、支持对用户输入内容进行服务器端与客户端JS双重验证,有效防止SQL注入 ★ 10、支持自动生成多组多级的级联下拉框功能,快速建立如:省、市、县/公司、部门、小组等形式下拉框 ★ 11、支持表单提交超过100KB的文本数据 ★ 12、支持多文件上载、修改、删除记录时同步删除文件 13、支持控件名加密,使输入控件的名称与字段名不同,防止他人从客户端HTML中猜解 ★ 14、支持列表、搜索页面对数据记录进行实时排序、修改、批量删除等功能 15、支持表头/单独表格搜索两种布局方式 16、提供多种灵活翻页方案,用户可设置每页记录条数、上/下页、前/后N页、输入数字跳转到指定页面等,提高海量数据翻页速度 17、提供丰富的建站常用VB、JS函数库 ★ 18、更多扩展功能: 添加、修改页面在保存信息前进行预览功能 添加、修改页面提交后自动跳转并刷新列表页 字段描述批量格式化,可从字段名、描述生成,加强英文字符处理 列表、搜索页面隔行颜色、点击变色设置 根据数据库字段允许空值状态自动设置输入检测代码 页面皮肤模板设置,根据网页模板快速生成页面 ★ 设置指定字段在编辑信息时为只读状态 字段需要二次输入(如输入两次密码,以验证其正确性) ★ 在列表中直接批量编辑字段值,便于管理员维护 列表、搜索文件自动读取链接数据表值的实际信息 发送邮件功能,设置字段为邮件对应信息,可发送附件 ★ (繁、简、英)单语言版本 ★ 多语言页面实时翻译功能(默认:繁、简、英,可增加其它语言) ★ 多语言编码支持(GB2312/UTF8) ★ 生成提交校验码图片 ★ 搜索、列表文件以详细列表页(留言板风格)显示 生成权限,限制用户对指定页面的添加、删除、编辑权 将查询结果导出为CSV、HTML、EXCEL文件 ★ 生成不同选择字段的SQL语句 生成数据库字典 ★ 模板代码生成器,可自定义模板、变量生成代码 ★

81,095

社区成员

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

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