- 浏览: 86841 次
- 性别:
- 来自: 长沙
最新评论
-
daAoBaMapigu:
ssh框架入门 -
qinglintan:
还有很多的方法可以说明,特别多表间查询时..
关于HibernateDaoSupport类 -
nopain_nogain:
Good
Spring,hibernate,struts的面试笔试题(含答案
基于网友的要求,我贴出在项目中用到的三级联动的代码:
jsp的代码:
<%@ page contentType = "text/html; charset=GBK" import="java.util.*,com.wehave.hyerp.procurement.domain.Cgsqd"%>
<%@ taglib uri="struts-html" prefix="html" %>
<%@ taglib uri="struts-logic" prefix="logic" %>
<%@ taglib uri="struts-bean" prefix="bean" %>
<html>
<head>
<title> </title>
<link rel = "stylesheet" type = "text/css" href = "../css/olstyle.css">
<SCRIPT type="text/javascript">
var req;
window.onload=function(){
}
function Change_Select()
{
var zhi=document.getElementById('m_gykfwzlbb_lbbm').value;
var url="sqdSelect.go?method=getSkill&id="+zhi;
if(zhi=="0"){
alert("请选择您要察看的信息");
return;
}else{
if(window.XMLHttpRequest)
{
req=new XMLHttpRequest();
}else if(window.ActiveXObject)
{
req=new ActiveXObject("Microsoft.XMLHTTP");
}
if(req)
{
req.open("GET",url,true);
req.onreadystatechange=callback;
req.send(null);
}
}
}
function Change_Select2()
{
var zhi=document.getElementById('m_lbbm_se').value;
//alert(zhi.substring(0,2));
if(zhi=="0"){
alert("请选择您要察看的信息");
return;
}
if(zhi.substring(0,2)=="WY"){
var url="sqdSelect.go?method=getSkill2&id="+zhi;
if(window.XMLHttpRequest)
{
req=new XMLHttpRequest();
}else if(window.ActiveXObject)
{
req=new ActiveXObject("Microsoft.XMLHTTP");
}
if(req)
{
req.open("GET",url,true);
req.onreadystatechange=callback2;
req.send(null);
}
}else{
parent.topFram.location ="sqdSelectAll.go?method=getlistAll&id="+zhi;
}
}
function Change_Select3()
{
var zhi=document.getElementById('m_lbbm_th').value;
//alert(zhi.substring(0,2));
if(zhi=="0"){
alert("请选择您要察看的信息");
return;
}else{
parent.topFram.location ="sqdSelectAll.go?method=getlistAll2&id="+zhi;
}
}
function callback()
{
if(req.readyState == 4)
{
if(req.status == 200)
{
parseMessage();
}else{
alert("Not able to retrieve description"+req.statusText);
}
}
}
function callback2()
{
if(req.readyState == 4)
{
if(req.status == 200)
{
parseMessage2();
}else{
alert("Not able to retrieve description"+req.statusText);
}
}
}
function parseMessage()
{
var xmlDoc=req.responseXML.documentElement;
var xSel=xmlDoc.getElementsByTagName('select');
var select_root=document.getElementById('m_lbbm_se');
select_root.options.length=0;
for(var i=0;i<xSel.length;i++)
{
var xValue=xSel[i].childNodes[0].firstChild.nodeValue;
var xText=xSel[i].childNodes[1].firstChild.nodeValue;
var option=new Option(xText,xValue);
try{
select_root.add(option);
}catch(e){
}
}
}
function parseMessage2()
{
var xmlDoc=req.responseXML.documentElement;
var xSel=xmlDoc.getElementsByTagName('select');
var select_root=document.getElementById('m_lbbm_th');
select_root.options.length=0;
for(var i=0;i<xSel.length;i++)
{
var xValue=xSel[i].childNodes[0].firstChild.nodeValue;
var xText=xSel[i].childNodes[1].firstChild.nodeValue;
var option=new Option(xText,xValue);
try{
select_root.add(option);
}catch(e){
}
}
}
</SCRIPT>
</head>
<body bgcolor = "#C8D0D4">
<html:form action="/cgsqdNewAction.go">
<TABLE class = "cbToolbar" id = "idToolbar" cellpadding = '0' cellspacing = '0'>
<TR align = "left" valign = "top" >
<TD NOWRAP> 物质类别:
<html:select property="m_gykfwzlbb_lbbm" onchange="Change_Select()">
<html:option value="0">请选择</html:option>
<html:options collection="LbfList" property="m_gykfwzlbb_lbbm" labelProperty="m_gykfwzlbb_lbmc"/>
</html:select>
<html:select property="m_lbbm_se" styleId="m_lbbm_se" onchange="Change_Select2()">
<html:option value="0"> </html:option>
</html:select>
<html:select property="m_lbbm_th" styleId="m_lbbm_th" onchange="Change_Select3()">
<html:option value="0"> </html:option>
</html:select>
</TD>
</tr>
</table>
</html:form>
</body>
</html>
action中的代码:
/** *//**
*
* 查询物质编码类别列表操作(一级)
* */
public ActionForward doSelectWzlb(
ActionMapping mapping,
ActionForm form,
HttpServletRequest req,
HttpServletResponse res) {
HttpSession session = req.getSession();
UserSession userSession =
(UserSession) session.getAttribute("userSession");
permission.setUserID(userSession.getUserId());
permission.setUserName(userSession.getUserName());
permission.setModuleName("m_cgsqd");
permission.setActionStr("'m_select'");
if(permissionService.checkUserPermission(permission)){
int updateSign=0;
try{
cgsqdService.updateCgsqwzhzb_sqsl();
updateSign=1;
}catch(Exception e){
e.printStackTrace();
updateSign=0;
}
if(updateSign==1){
List LbfList=cgsqdService.treeListWzlb2();
req.setAttribute("LbfList",LbfList);
return mapping.findForward("tools");
}else{
return null;
}
}else{
return mapping.findForward("failure");
}
}
/** *//**
*
* 查询物质编码类别列表操作(二级)
* */
public ActionForward doSelectWzlb1(
ActionMapping mapping,
ActionForm form,
HttpServletRequest req,
HttpServletResponse res) {
HttpSession session = req.getSession();
UserSession userSession =
(UserSession) session.getAttribute("userSession");
permission.setUserID(userSession.getUserId());
permission.setUserName(userSession.getUserName());
permission.setModuleName("m_cgsqd");
permission.setActionStr("'m_select'");
if(permissionService.checkUserPermission(permission)){
int updateSign=0;
try{
cgsqdService.updateCgsqwzhzb_sqsl();
updateSign=1;
}catch(Exception e){
e.printStackTrace();
updateSign=0;
}
if(updateSign==1){
List LbfList=cgsqdService.treeListWzlb2();
req.setAttribute("LbfList",LbfList);
return mapping.findForward("tools1");
}else{
return null;
}
}else{
return mapping.findForward("failure");
}
}
/** *//**
*
* 查询物质编码类别列表操作(三级)
* */
public ActionForward getSkill(
ActionMapping mapping,
ActionForm form,
HttpServletRequest req,
HttpServletResponse res) {
HttpSession session = req.getSession();
UserSession userSession =
(UserSession) session.getAttribute("userSession");
permission.setUserID(userSession.getUserId());
permission.setUserName(userSession.getUserName());
permission.setModuleName("m_cgsqd");
permission.setActionStr("'m_select'");
if(permissionService.checkUserPermission(permission)){
String id=req.getParameter("id");
res.setContentType("text/xml;charset=GBK");
res.setHeader("Cache-Control","no-cache");
String xml_start="<?xml version=\"1.0\" encoding=\"GBK\"?>";
xml_start+="<selects>";
String xml_end="</selects>";
String xml="<select><value>0</value><text>请选择</text></select>";
String m_lbbm_se="";
String m_lbmc_se="";
List LbfList=null;
if(id.equals("WY")){
LbfList=cgsqdService.treeListWzlb3_2(id);
}else{
LbfList=cgsqdService.treeListWzlb3_1(id);
}
Iterator it=LbfList.iterator();
while(it.hasNext()){
Cgsqd cgsqd=(Cgsqd)it.next();
m_lbbm_se=cgsqd.getM_gykfwzlbb_lbbm();
m_lbmc_se=cgsqd.getM_gykfwzlbb_lbmc();
xml +="<select><value>"+m_lbbm_se+"</value><text>"+m_lbmc_se+"</text></select>";
}
String last_xml=xml_start+xml+xml_end;
logger.debug("XML是:"+last_xml);
try {
res.getWriter().write(last_xml);
} catch (IOException e) {
e.printStackTrace();
}
return null;
}else{
return null;
}
}
主要代码就这些,去掉一些权限大代码,真正的代码并不多。
jsp的代码:
<%@ page contentType = "text/html; charset=GBK" import="java.util.*,com.wehave.hyerp.procurement.domain.Cgsqd"%>
<%@ taglib uri="struts-html" prefix="html" %>
<%@ taglib uri="struts-logic" prefix="logic" %>
<%@ taglib uri="struts-bean" prefix="bean" %>
<html>
<head>
<title> </title>
<link rel = "stylesheet" type = "text/css" href = "../css/olstyle.css">
<SCRIPT type="text/javascript">
var req;
window.onload=function(){
}
function Change_Select()
{
var zhi=document.getElementById('m_gykfwzlbb_lbbm').value;
var url="sqdSelect.go?method=getSkill&id="+zhi;
if(zhi=="0"){
alert("请选择您要察看的信息");
return;
}else{
if(window.XMLHttpRequest)
{
req=new XMLHttpRequest();
}else if(window.ActiveXObject)
{
req=new ActiveXObject("Microsoft.XMLHTTP");
}
if(req)
{
req.open("GET",url,true);
req.onreadystatechange=callback;
req.send(null);
}
}
}
function Change_Select2()
{
var zhi=document.getElementById('m_lbbm_se').value;
//alert(zhi.substring(0,2));
if(zhi=="0"){
alert("请选择您要察看的信息");
return;
}
if(zhi.substring(0,2)=="WY"){
var url="sqdSelect.go?method=getSkill2&id="+zhi;
if(window.XMLHttpRequest)
{
req=new XMLHttpRequest();
}else if(window.ActiveXObject)
{
req=new ActiveXObject("Microsoft.XMLHTTP");
}
if(req)
{
req.open("GET",url,true);
req.onreadystatechange=callback2;
req.send(null);
}
}else{
parent.topFram.location ="sqdSelectAll.go?method=getlistAll&id="+zhi;
}
}
function Change_Select3()
{
var zhi=document.getElementById('m_lbbm_th').value;
//alert(zhi.substring(0,2));
if(zhi=="0"){
alert("请选择您要察看的信息");
return;
}else{
parent.topFram.location ="sqdSelectAll.go?method=getlistAll2&id="+zhi;
}
}
function callback()
{
if(req.readyState == 4)
{
if(req.status == 200)
{
parseMessage();
}else{
alert("Not able to retrieve description"+req.statusText);
}
}
}
function callback2()
{
if(req.readyState == 4)
{
if(req.status == 200)
{
parseMessage2();
}else{
alert("Not able to retrieve description"+req.statusText);
}
}
}
function parseMessage()
{
var xmlDoc=req.responseXML.documentElement;
var xSel=xmlDoc.getElementsByTagName('select');
var select_root=document.getElementById('m_lbbm_se');
select_root.options.length=0;
for(var i=0;i<xSel.length;i++)
{
var xValue=xSel[i].childNodes[0].firstChild.nodeValue;
var xText=xSel[i].childNodes[1].firstChild.nodeValue;
var option=new Option(xText,xValue);
try{
select_root.add(option);
}catch(e){
}
}
}
function parseMessage2()
{
var xmlDoc=req.responseXML.documentElement;
var xSel=xmlDoc.getElementsByTagName('select');
var select_root=document.getElementById('m_lbbm_th');
select_root.options.length=0;
for(var i=0;i<xSel.length;i++)
{
var xValue=xSel[i].childNodes[0].firstChild.nodeValue;
var xText=xSel[i].childNodes[1].firstChild.nodeValue;
var option=new Option(xText,xValue);
try{
select_root.add(option);
}catch(e){
}
}
}
</SCRIPT>
</head>
<body bgcolor = "#C8D0D4">
<html:form action="/cgsqdNewAction.go">
<TABLE class = "cbToolbar" id = "idToolbar" cellpadding = '0' cellspacing = '0'>
<TR align = "left" valign = "top" >
<TD NOWRAP> 物质类别:
<html:select property="m_gykfwzlbb_lbbm" onchange="Change_Select()">
<html:option value="0">请选择</html:option>
<html:options collection="LbfList" property="m_gykfwzlbb_lbbm" labelProperty="m_gykfwzlbb_lbmc"/>
</html:select>
<html:select property="m_lbbm_se" styleId="m_lbbm_se" onchange="Change_Select2()">
<html:option value="0"> </html:option>
</html:select>
<html:select property="m_lbbm_th" styleId="m_lbbm_th" onchange="Change_Select3()">
<html:option value="0"> </html:option>
</html:select>
</TD>
</tr>
</table>
</html:form>
</body>
</html>
action中的代码:
/** *//**
*
* 查询物质编码类别列表操作(一级)
* */
public ActionForward doSelectWzlb(
ActionMapping mapping,
ActionForm form,
HttpServletRequest req,
HttpServletResponse res) {
HttpSession session = req.getSession();
UserSession userSession =
(UserSession) session.getAttribute("userSession");
permission.setUserID(userSession.getUserId());
permission.setUserName(userSession.getUserName());
permission.setModuleName("m_cgsqd");
permission.setActionStr("'m_select'");
if(permissionService.checkUserPermission(permission)){
int updateSign=0;
try{
cgsqdService.updateCgsqwzhzb_sqsl();
updateSign=1;
}catch(Exception e){
e.printStackTrace();
updateSign=0;
}
if(updateSign==1){
List LbfList=cgsqdService.treeListWzlb2();
req.setAttribute("LbfList",LbfList);
return mapping.findForward("tools");
}else{
return null;
}
}else{
return mapping.findForward("failure");
}
}
/** *//**
*
* 查询物质编码类别列表操作(二级)
* */
public ActionForward doSelectWzlb1(
ActionMapping mapping,
ActionForm form,
HttpServletRequest req,
HttpServletResponse res) {
HttpSession session = req.getSession();
UserSession userSession =
(UserSession) session.getAttribute("userSession");
permission.setUserID(userSession.getUserId());
permission.setUserName(userSession.getUserName());
permission.setModuleName("m_cgsqd");
permission.setActionStr("'m_select'");
if(permissionService.checkUserPermission(permission)){
int updateSign=0;
try{
cgsqdService.updateCgsqwzhzb_sqsl();
updateSign=1;
}catch(Exception e){
e.printStackTrace();
updateSign=0;
}
if(updateSign==1){
List LbfList=cgsqdService.treeListWzlb2();
req.setAttribute("LbfList",LbfList);
return mapping.findForward("tools1");
}else{
return null;
}
}else{
return mapping.findForward("failure");
}
}
/** *//**
*
* 查询物质编码类别列表操作(三级)
* */
public ActionForward getSkill(
ActionMapping mapping,
ActionForm form,
HttpServletRequest req,
HttpServletResponse res) {
HttpSession session = req.getSession();
UserSession userSession =
(UserSession) session.getAttribute("userSession");
permission.setUserID(userSession.getUserId());
permission.setUserName(userSession.getUserName());
permission.setModuleName("m_cgsqd");
permission.setActionStr("'m_select'");
if(permissionService.checkUserPermission(permission)){
String id=req.getParameter("id");
res.setContentType("text/xml;charset=GBK");
res.setHeader("Cache-Control","no-cache");
String xml_start="<?xml version=\"1.0\" encoding=\"GBK\"?>";
xml_start+="<selects>";
String xml_end="</selects>";
String xml="<select><value>0</value><text>请选择</text></select>";
String m_lbbm_se="";
String m_lbmc_se="";
List LbfList=null;
if(id.equals("WY")){
LbfList=cgsqdService.treeListWzlb3_2(id);
}else{
LbfList=cgsqdService.treeListWzlb3_1(id);
}
Iterator it=LbfList.iterator();
while(it.hasNext()){
Cgsqd cgsqd=(Cgsqd)it.next();
m_lbbm_se=cgsqd.getM_gykfwzlbb_lbbm();
m_lbmc_se=cgsqd.getM_gykfwzlbb_lbmc();
xml +="<select><value>"+m_lbbm_se+"</value><text>"+m_lbmc_se+"</text></select>";
}
String last_xml=xml_start+xml+xml_end;
logger.debug("XML是:"+last_xml);
try {
res.getWriter().write(last_xml);
} catch (IOException e) {
e.printStackTrace();
}
return null;
}else{
return null;
}
}
主要代码就这些,去掉一些权限大代码,真正的代码并不多。
发表评论
-
一些不常用的东西
2009-06-21 23:09 1035alias less='TERM=linux less' ... -
js中的小技巧
2009-05-31 16:06 1129... -
dwr二级级联
2009-05-25 16:03 1179<%@ page contentType="t ... -
显示隐藏的元素
2009-03-16 11:52 1050<!DOCTYPE html PUBLIC " ... -
DWR util.js 整理(DWR 处理各种form表单Select/option,table等,
2009-03-12 10:14 1232DWR util.js 学习笔记 /************* ... -
使用javascript动态添加和删除table的行和列
2009-03-10 10:20 1963使用javascript动态添加和删除table的行和列 ... -
ajax+struts级联无需数据库,绝对可以看到效果的例子
2009-02-20 17:48 1852jsp文件<%@ page language=" ... -
ajax+struts实现级联出问题了
2009-02-08 18:28 645index.jsp <%@ page language ... -
ajax和struts实现级联
2009-01-03 23:35 921<html> <head> &l ... -
ajax+struts完成三级联动下拉框
2008-12-14 13:59 1947"text/javascript"> ... -
EXT提交服务器的三种方式
2008-12-06 17:07 13131. EXT提交服务器的三种方式 a: EXT的form表单 ...
相关推荐
这个"一个最简单的三级联动代码"示例可能是用来帮助开发者理解如何实现这种功能的。下面我们将深入探讨三级联动的基本概念、实现原理以及相关知识点。 三级联动通常指的是三个下拉菜单之间的联动关系,其中每一个...
总的来说,"三级联动代码及资源"这个压缩包可能包含了一系列实现三级联动的示例代码,涵盖了前端交互、后端处理和数据库操作等多方面的知识点,对于学习和理解Web开发中的动态数据交互具有很高的参考价值。
在网页开发中,"JS城市三级联动代码"是一种常见的交互设计,主要用于地址选择,例如省、市、区的选择。这种功能通常使用JavaScript实现,与其他后端技术如ASP和数据库(如ACCESS)配合工作,为用户提供流畅的下拉...
**Jquery 省市区县三级联动代码详解** 在网页开发中,经常需要实现省市区县的联动选择功能,这可以方便用户根据地理位置快速选择。本文将详细介绍如何使用Jquery实现这种三级联动效果,以及涉及的相关文件和数据...
在这个"JS三级联动代码"中,我们可以预期它包含了一个实现全球主要国家、地区或城市的动态选择功能。 首先,我们来理解一下什么是三级联动。在UI设计中,联动通常指的是一个选择项的变化会触发其他相关选择项的更新...
最新省市县/区 三级联动代码 共3个 最新省市县/区 三级联动代码 共3个 最新省市县/区 三级联动代码 共3个
使用ajax + servlet + jdbc做的省市区三级联动,内含sql文件。对应有博客介绍,欢迎访问http://blog.csdn.net/qq_19558705/article/details/50318981
在这个“三级联动代码”项目中,我们看到它被用来实现一个功能,让用户能够选择特定的日期,即年、月、日。这个功能在很多应用场景下都非常实用,比如日期选择器、生日输入等。 UIPickerView 的核心在于它的数据源...
这个"超好用的三级联动代码"很可能提供了一种高效且易用的解决方案。下面将详细解释三级联动的概念,以及可能涉及的技术和实现方法。 **什么是三级联动?** 三级联动指的是在三个层级的数据之间建立联动关系,当...
实现下拉选项的三级联动,从而实现填写内容的规范化。
在这个案例中,我们讨论的是一个使用jQuery实现的世界城市三级联动代码,同时具备搜索功能。这个压缩包文件名为"jQuery世界城市三级联动代码带搜索.zip",意味着它包含了一个完整的解决方案,帮助开发者快速构建这种...
在本案例中,"三级联动代码 DWR"指的是使用DWR来实现一个具有三级关联的下拉菜单,当用户在一级菜单中选择一项时,二级菜单会自动更新,然后根据二级菜单的选择,三级菜单也会动态改变。这种方式可以提升用户体验,...
在网页开发中,"三级联动"通常指的是在三个下拉菜单之间通过选择关系进行联动的效果。这种效果常见于地区选择,如省-市-区,或者产品分类等场景。当用户在一级菜单(如省份)中做出选择时,二级菜单(如城市)会更新...
在这个场景中,我们将讨论如何使用jQuery库来实现全国省市区城市三级联动的效果。 jQuery是一个强大的JavaScript库,它简化了DOM操作、事件处理、动画设计以及Ajax交互等任务。在实现省市区联动时,我们主要利用...
在移动应用开发中,"手机端城市三级联动代码"是一个常见的功能需求,特别是在涉及地理位置选择、物流配送或者信息填写的场景。这个功能允许用户通过三个级别(如:省份、城市、区县)来精确选择他们的位置。在这个...
总之,"js年月日三级联动代码"是通过JavaScript监听年份选择的改变,动态生成对应的月份和日期选项,以实现日期选择的联动效果。这个功能在许多网页表单中都很常见,对于用户输入日期提供了便利。在实际开发中,我们...
本资源"兼容IE浏览器的三级联动代码.zip"提供了一个JavaScript实现的三级联动菜单,适用于那些仍需支持IE浏览器的项目。 三级联动菜单是一种常见的网页交互设计,常见于导航栏或下拉选项中。它允许用户从三个层次的...
"jQuery手机端省市区三级联动代码"是指使用jQuery库来实现这种功能的代码片段。jQuery是一个轻量级、高性能的JavaScript库,它简化了HTML文档遍历、事件处理、动画和Ajax交互,使得开发者可以更快速、更容易地编写...
这个"jquery+php+mysql省市县Ajax三级联动代码"是实现这种功能的一个实例,结合了前端JavaScript库jQuery、后端PHP编程语言以及MySQL数据库。下面我们将详细探讨这个技术组合在实现三级联动中的应用。 首先,jQuery...