jquery+ json--省市二级联动

 
Js代码
  1. <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">   
  2. <html>   
  3.     <head>   
  4.         <meta http-equiv="Content-Type" content="text/html; charset=utf-8">   
  5.         <title>Untitled Document</title>   
  6.         <script type="text/javascript" src="jquery-1.6.1.js">   
  7.         </script>   
  8.         <script language="JavaScript">   
  9.             $(function(){   
  10.                 $("#s1").change(function(){   
  11.                     var obj = $("#s1");//取得下拉列表框对象 s1   
  12.                     //                  alert(obj);   
  13.                        
  14.                     //2. 取得Options 的长度    
  15.                     len = $('#s1 option').length   
  16.                     //                  alert(len);   
  17.                        
  18.                 
  19.                     //3. 取得所选值  注意,如果option没有value属性,则默认取的是text属性值   
  20.                     obj_value = $('#s1').val();   
  21.                        
  22.                     //                  alert("$('#s1').val()"+obj_value);   
  23.                     //                  alert($('#s2').val());   
  24.                        
  25.                     //4. 取得所选中的option   
  26.                     var opt = $("#s1 option:selected");   
  27.                     ;   
  28.                     //                  alert("opt:"+opt);   
  29.                     //                  alert(opt.text());   
  30.                     //                  alert(opt.val());   
  31.                        
  32.                        
  33.                     var url = "../jsonServlet";   
  34.                     var param = "name=" + $("#s1 option:selected").text();   
  35.                     alert(param);   
  36.                     $.ajax({   
  37.                         type: "POST",   
  38.                         url: url,   
  39.                         data: param,   
  40.                         cache: false,   
  41.                         dataType: "json",   
  42.                         success: function(msg){   
  43.                             //jsonServlet 返回的是一个JSONArray   
  44.                             alert(msg);   
  45.                                
  46.                             //清空下拉列表框   
  47.                             $("#s2").empty();   
  48.                                
  49.                             //遍历数组   
  50.                           
  51.                             $.each(msg, function(i, text){   
  52.                                 alert("数组的索引:" + i);   
  53.                                 alert("数组的值:" + text);   
  54.                                 //增加option   
  55.                                 $("#s2").append("<option>" + text + "</option>")   
  56.                                    
  57.                                    
  58.                             });   
  59.                         }   
  60.                     })   
  61.                        
  62.                 });   
  63.             })   
  64.                
  65.                
  66.                
  67.         </script>   
  68.     </head>   
  69.     <body>   
  70.         <p align="center">   
  71.          jquery+ json--省市二级联动   
  72.         </p>   
  73.         <table align="center">   
  74.             <tr>   
  75.                 <td>   
  76.                     省份   
  77.                 </td>   
  78.                 <td>   
  79.                     <select id="s1">   
  80.                         <option value="1">省份</option>   
  81.                         <option value="2">湖北</option>   
  82.                         <option value="3">浙江</option>   
  83.                     </select>   
  84.                 </td>   
  85.                 <td>   
  86.                     <select id="s2">   
  87.                         <option>城市</option>   
  88.                     </select>   
  89.                 </td>   
  90.             </tr>   
  91.         </table>   
  92.     </body>   
  93. </html>  

后台:JsonServlet.java

Java代码
  1. package com.wepull.servlet;   
  2.   
  3. import java.io.IOException;   
  4. import java.io.PrintWriter;   
  5.   
  6. import javax.servlet.ServletException;   
  7. import javax.servlet.http.HttpServlet;   
  8. import javax.servlet.http.HttpServletRequest;   
  9. import javax.servlet.http.HttpServletResponse;   
  10.   
  11. import net.sf.json.JSONArray;   
  12.   
  13. public class JsonServlet extends HttpServlet {   
  14.   
  15.     @Override  
  16.     protected void doGet(HttpServletRequest req, HttpServletResponse resp)   
  17.             throws ServletException, IOException {   
  18.         // TODO Auto-generated method stub   
  19.         doPost(req, resp);   
  20.     }   
  21.   
  22.     @Override  
  23.     protected void doPost(HttpServletRequest request, HttpServletResponse response)   
  24.             throws ServletException, IOException {   
  25.            
  26.         request.setCharacterEncoding("utf-8");   
  27.         response.setCharacterEncoding("utf-8");   
  28.            
  29.         String name = request.getParameter("name");   
  30.         System.out.println("ajax传来的name:"+name);   
  31.            
  32.   
  33.         PrintWriter  pw = response.getWriter();   
  34.            
  35.         JSONArray array = new JSONArray();   
  36.         if("湖北".equals(name)){   
  37.                
  38.             array.add("武汉");   
  39.             array.add("宜昌");   
  40.             array.add("黄石");   
  41.             array.add("黄冈");   
  42.         }else if("浙江".equals(name)){   
  43.             array.add("杭州");   
  44.             array.add("温州");   
  45.             array.add("台州");   
  46.         }   
  47.         System.out.println(array);   
  48.         System.out.println("array.toString()"+array.toString());   
  49.         pw.println(array);   
  50.     }   
  51.        
  52. }  
package com.wepull.servlet;

import java.io.IOException;
import java.io.PrintWriter;

import javax.servlet.ServletException;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;

import net.sf.json.JSONArray;

public class JsonServlet extends HttpServlet {

	@Override
	protected void doGet(HttpServletRequest req, HttpServletResponse resp)
			throws ServletException, IOException {
		// TODO Auto-generated method stub
		doPost(req, resp);
	}

	@Override
	protected void doPost(HttpServletRequest request, HttpServletResponse response)
			throws ServletException, IOException {
		
		request.setCharacterEncoding("utf-8");
		response.setCharacterEncoding("utf-8");
		
		String name = request.getParameter("name");
		System.out.println("ajax传来的name:"+name);
	    

		PrintWriter  pw = response.getWriter();
		
		JSONArray array = new JSONArray();
		if("湖北".equals(name)){
			
			array.add("武汉");
			array.add("宜昌");
			array.add("黄石");
			array.add("黄冈");
		}else if("浙江".equals(name)){
			array.add("杭州");
			array.add("温州");
			array.add("台州");
		}
		System.out.println(array);
		System.out.println("array.toString()"+array.toString());
		pw.println(array);
	}
	
}

 

 附:jQuery添加/删除Select的Option项:

1. $("#select_id").append("<option value='Value'>Text</option>");  //为Select追加一个Option(下拉项)

2. $("#select_id").prepend("<option value='0'>请选择</option>");  //为Select插入一个Option(第一个位置)

3. $("#select_id option:last").remove();  //删除Select中索引值最大Option(最后一个)

4. $("#select_id option[index='0']").remove();  //删除Select中索引值为0的Option(第一个)

5. $("#select_id option[value='3']").remove();  //删除Select中Value='3'的Option

5. $("#select_id option[text='4']").remove();  //删除Select中Text='4'的Option

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值