jquery从数据库中获取数据装换成json数据实现三级联动

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
  <head>
    <title>test01.html</title>
    <meta http-equiv="content-type" content="text/html; charset=UTF-8">
	<script language="JavaScript" src="./js/jquery-1.4.2.js"></script>
  </head>
  <body>
     <select id="province" name="province">
       <option value="">请选择....</option>
     </select>
	 <select id="city" name="city">
	 	<option value="">请选择.....</option>
	 </select>
	 <select id="county" name="county">
	 	<option value="">请选择.....</option>
	 </select>
  </body>
   <script language="JavaScript">
    $().ready(function(){
/****************************************************************/				
	  //加载从数据库查询所有的省的信息,放置到省的下拉选中
	  $.post("provinceServlet",function(data,textStatus){
           var dataObj=eval("("+data+")");		 
		   for(var i=0;i<dataObj.length;i++){
		   	  var $option=$("<option></option>");
			  $option.attr("value",dataObj[i].pid);
			  $option.text(dataObj[i].pname);
			  $("#province").append($option);
		   }
	  });	
/****************************************************************/
     //省的变化引起城市的变化
	 $("#province").change(function(){
		var jsonObj={
			pid:$(this).val()
		}
		
		//删除城市下所有的下拉选,保留<option value="">请选择.....</option>
		$("#city option[value!='']").remove();
		
	    //删除县下所有的下拉选保留<option value="">请选择.....</option>
		$("#county option[value!='']").remove();
		
		
		
	   $.post("cityServlet",jsonObj,function(data,textStatus){
		   var dataObj=eval("("+data+")");		 
		   for(var i=0;i<dataObj.length;i++){
		   	  var $option=$("<option></option>");
			  $option.attr("value",dataObj[i].cid);
			  $option.text(dataObj[i].cname);
			  $("#city").append($option);
		   }
			
	   });
	 });
/**********************************************************/
    //城市的变化引起县的变化
    $("#city").change(function(){
		var jsonObj={
			cid:$(this).val()
		} 
		
		//删除县下所有的下拉选保留<option value="">请选择.....</option>
		$("#county option[value!='']").remove();
		
		$.post("countyServlet",jsonObj,function(data,textStatus){
			 var dataObj=eval("("+data+")");		 
		     for(var i=0;i<dataObj.length;i++){
		   	    var $option=$("<option></option>");
			    $option.attr("value",dataObj[i].tid);
			    $option.text(dataObj[i].tname);
			    $("#county").append($option);
		   }
		}); 
	});	 
/****************************************************/			  
	});
  </script>
</html>



servlet中返回的数据

List<County> list=countyDaoImpl.findCountysByCid(cid);	      
JSONArray  jsonarray=JSONArray.fromObject(list);
out.println(jsonarray.toString());

代码来自:冯威---传智播客Ajax

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值