`
pharaohsprince
  • 浏览: 296975 次
  • 性别: Icon_minigender_1
  • 来自: 南京
文章分类
社区版块
存档分类
最新评论

Ajax+Struts+Hibernate实现级联下拉单

阅读更多
Ajax+Struts+Hibernate实现级联下拉单
转自:http://www.blogjava.net/rain1102/articles/69348.html
-------------------------------------------------------------------
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
  
<head>
    
<title>kind.html</title>
  
<script type="text/javascript" src="js/common.js"></script>
  
<script type="text/javascript">...
    
function refreshModelList()...
      
var oneName=document.getElementById("kindone").value;
      
if(oneName=="")...{
        clearlist();
        
return;
      }

      
var url="kind.do?method=search&&kindid="+oneName;
     
      createXMLHttpRequest();
      
      xmlHttp.onreadystatechange
=handleStateChange;
      xmlHttp.open(
"GET",url,true);
      xmlHttp.send(
null);
      
    }

    
function handleStateChange()...{
      
if(xmlHttp.readyState==4)...
        
if(xmlHttp.status==200)...{
          setNames(); 
        }

      }

    }

    
function clearlist()...{
      
var models=document.getElementById("kindtwo");
      
while(models.childNodes.length>0)...{
        models.removeChild(models.childNodes[
0]);
      }

    }

    
function setNames()...{
      clearlist();
      
var models=document.getElementById("kindtwo");
      
var xmlDoc=xmlHttp.responseXML;
      
var results=xmlDoc.getElementsByTagName("kind");
      
var option=null;
      
for(var i=0;i<results.length;i++)...{
        option
=document.createElement("option");
        option.appendChild(document.createTextNode(results[i].firstChild.nodeValue));
        models.appendChild(option);
      }

    }

  
</script>
  
</head>
  
  
<body>
    
<h2>dynamicLists</h2>
    
<select id="kindone" onchange="refreshModelList();">
      
<option value="1">a</option>
      
<option value="2">b</option>
      
<option value="3">c</option>
      
<option value="4">d</option>
    
</select>
    
<select id="kindtwo">
    
</select>
  
</body>
</html>
/**//*
 * Generated by MyEclipse Struts
 * Template path: templates/java/JavaClass.vtl
 
*/

package com.rain.struts.action; 
import java.io.IOException;
import java.io.PrintWriter;
import java.util.Iterator;
import java.util.List;

import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import org.apache.struts.action.ActionForm;
import org.apache.struts.action.ActionForward;
import org.apache.struts.action.ActionMapping;
import org.apache.struts.actions.DispatchAction;
import org.apache.struts.validator.DynaValidatorForm;

import com.rain.bean.KindDao;

/** *//** 
 * MyEclipse Struts
 * Creation date: 09-13-2006
 * 
 * XDoclet definition:
 * @struts.action parameter="method"
 
*/

public class KindAction extends DispatchAction ...{
 
/**//*
  * Generated Methods
  
*/


 
/** *//** 
  * Method execute
  * 
@param mapping
  * 
@param form
  * 
@param request
  * 
@param response
  * 
@return ActionForward
  
*/

 
public ActionForward search(ActionMapping mapping, ActionForm form,
   HttpServletRequest request, HttpServletResponse response) 
...{
  DynaValidatorForm kindForm 
= (DynaValidatorForm)form;
  KindDao dao
=new KindDao();
  
int kindid=Integer.parseInt(kindForm.getString("kindid"));
  List list
=dao.findAllKind(kindid);
  Iterator it
=list.iterator();
  
if(it.hasNext())...{
   PrintWriter out;
   
try ...{
    response.setContentType(
"text/xml;charset=UTF-8");
    response.setHeader(
"Cache-Control""no-cache");
    out 
= response.getWriter();

    out.println(
"<response>");
    
while(it.hasNext())...{
     String name
=it.next().toString();
     out.println(
"<kind>"+name+"</kind>");
    }

    out.println(
"</response>");
    it
=null;
    out.close();
   }
 catch (IOException e) ...{
    
// TODO 自动生成 catch 块
    e.printStackTrace();
   }

   
  }
else...{
   response.setStatus(HttpServletResponse.SC_NO_CONTENT);
  }

  
// TODO Auto-generated method stub
  return null;
 }

}

 

分享到:
评论
1 楼 lang3126 2008-10-30  
楼主,那个common.js文件是哪个?不提供下载吗?

相关推荐

    ajax+struts2.0+jsp下拉列表级联

    在本示例中,JSP将负责显示页面,包括创建和初始化级联下拉列表,以及处理AJAX回调后的数据更新。 实现步骤大致如下: 1. 创建JSP页面:在JSP中,你需要创建两个或者更多个下拉列表,并绑定AJAX事件监听器。当第一...

    Struts2+Hibernate写的下拉菜单级联两级分类

    在Web应用中,级联下拉菜单常用于展现层次结构的数据,如省份-城市、部门-员工等。用户选择上级选项后,下级选项会根据所选内容动态更新。在Struts2框架中,我们可以利用Action类和JSP页面来实现这个功能。首先,...

    ajax_struts_jquery_json级联菜单

    综上所述,"ajax_struts_jquery_json级联菜单"的实现涉及了前端和后端的协同工作。前端利用jQuery的AJAX功能发送请求,处理JSON响应并更新DOM;后端则用Struts处理请求,查询数据库并返回JSON数据。这种组合提供了...

    三级联动的实例+struts2+hibernate3

    在这个实例中,我们将深入探讨如何使用Struts2和Hibernate3来实现这样的功能。 首先,Struts2是一个非常流行的Java Web框架,它基于MVC(Model-View-Controller)设计模式,用于简化Web应用开发。Struts2的核心是...

    用Struts2+Spring+Hibernate三大框架完成的级联操作

    本项目通过这三大框架实现了一个级联操作,具体涉及到了省市县以及年月日的选择,这种级联下拉菜单在实际应用中常常用于地址填写或日期选择等场景。 Struts2是基于MVC设计模式的Web框架,主要负责处理用户的请求和...

    SSH+jQuery+json 实现的Ajax操作,绝对精华,代码简练清晰,绝对能看明白

    这个压缩包中的资源,"SSH+jQuery+json 实现的Ajax操作,绝对精华,代码简练清晰,绝对能看明白",显然提供了一个使用这些技术实现Ajax级联操作的实例。下面将详细介绍这些技术及其在Ajax操作中的应用。 **SSH ...

    SSH+JQuery+MySQL级联操作(省市县级联)

    在IT行业中,SSH(Spring、Struts、Hibernate)是一个经典的Java Web开发框架组合,用于构建高效、可维护的Web应用程序。SSH框架集成了MVC设计模式的Struts、ORM对象关系映射的Hibernate以及依赖注入的Spring框架。...

    级联显示(树形,下拉列表)

    在级联下拉列表中,当用户在一个下拉列表中选择一个选项时,第二个相关的下拉列表会根据用户的选择动态地更新其选项。这种交互性提高了用户体验,尤其是在处理层次结构数据时,例如组织结构、地区划分等。 对于树形...

    用hibernate做的省市县三级级联,

    总的来说,这个项目展示了如何使用Hibernate、Ajax和DWR来实现一个高效、用户友好的省市县三级级联选择功能。开发过程中涉及了ORM、MVC架构、数据库操作以及前端交互等多个方面,是学习和实践Web开发技能的好实例。

    Struts_Hibernate_Dwr框架整合省份菜单级联

    本资料主要探讨的是如何将这三个框架进行集成,实现省份菜单的级联功能,即在前端选择省份时,对应的下拉菜单会动态加载出该省份的城市。 首先,Struts是一个MVC(Model-View-Controller)框架,它负责处理用户请求...

    最简单的省市区级联(带数据库)

    在实际应用中,你需要导入这个SQL脚本到你的MySQL数据库中,以便于级联下拉菜单的数据来源。 jQuery是一个轻量级的JavaScript库,它使得DOM操作、事件处理和AJAX异步通信更加简便。在这个项目中,jQuery与Ajax结合...

    北京中科信软AJAX培训

    实际应用方面,包括了实战技巧如数据校验、级联菜单、条目内容、级联下拉列表等,这些技巧可以在实现AJAX应用时提高效率和用户体验。还有异常处理机制、中文乱码问题及其解决方案等内容,这些都是在进行AJAX编程时...

    纯JSP+DWR实现三级联动下拉选择菜单实现技巧

    在这个例子中,DWR的这一特性使得实现三级联动变得简单而高效,无需依赖如Struts或Hibernate这样的大型框架。 在JSP页面中,使用JSTL (`&lt;c:forEach&gt;` 标签) 可以方便地遍历Java集合并将其转化为HTML选项。同时,...

    ssh2+extCombobox联动动态下拉框

    当我们将SSH2与ExtJS ComboBox结合使用时,可以创建动态联动的下拉框,实现数据的级联选择,提高用户交互体验。 在SSH2框架中,Struts2负责处理用户的请求和视图展示,Spring则管理应用的业务逻辑和依赖注入,...

    使用easyui中的conbox结合ssh注解方式实现省市区三级联动效果

    在Struts2的Action中,根据用户的选择(可能是通过AJAX请求)调用Service层的方法,获取新的级联数据,并将其转化为JSON格式,返回给前端。 4. **EasyUI前端**: 在HTML页面中,为每个Combobox设置`onChange`事件...

    仿google搜索提示效果和二级联动

    同时,它还可以实现省市联动中的下拉菜单交互,如自动填充、级联选择等效果。 5. **JSON**:JSON(JavaScript Object Notation)是一种轻量级的数据交换格式,易于人阅读和编写,同时也易于机器解析和生成。在本...

    java部分面试题.pdf

    10. **Hibernate多表级联优化**: - 级联操作(Cascade)可减少数据库操作次数,但过度使用可能导致性能下降,需合理设计和优化。 11. **Ajax的缺点**: - 部分页面刷新,可能导致状态管理复杂,SEO困难,以及...

Global site tag (gtag.js) - Google Analytics