JavaScript實(shí)現(xiàn)省市區(qū)三級(jí)聯(lián)動(dòng)
本文實(shí)例為大家分享了JavaScript實(shí)現(xiàn)省市區(qū)三級(jí)聯(lián)動(dòng)的具體代碼,供大家參考,具體內(nèi)容如下
首先是js
$(document).ready(function(){ getErpMarketByParentCode(0,'province',province); getErpMarketByParentCode(province,'city',city); getErpMarketByParentCode(city,'area',area); getErpMarketByParentCode(area,'market',market); $('#city').append($('<option>').val('').html('-請(qǐng)選擇-')).val(''); $('#area').append($('<option>').val('').html('-請(qǐng)選擇-')).val(''); if($('#market')){ $('#market').append($('<option>').val('').html('-請(qǐng)選擇-')).val(''); } $('#province').change(function(){ if($(this).val() == ''){ // 請(qǐng)選擇 $('#city').empty(); $('#area').empty(); $('#city').append($('<option>').val('').html('-請(qǐng)選擇-')).val(''); $('#area').append($('<option>').val('').html('-請(qǐng)選擇-')).val(''); if($('#market')){ $('#market').empty(); $('#market').append($('<option>').val('').html('-請(qǐng)選擇-')).val(''); } return; } getErpMarketByParentCode($(this).val(),'city'); $('#area').empty(); $('#area').append($('<option>').val('').html('-請(qǐng)選擇-')).val(''); }); $('#city').change(function(){ getErpMarketByParentCode($(this).val(),'area'); if($('#market')){ $('#market').empty(); $('#market').append($('<option>').val('').html('-請(qǐng)選擇-')).val(''); } }); $('#area').change(function(){ getErpMarketByParentCode($(this).val(),'market'); }); }); function getErpMarketByParentCode(parentCode, id, value){ $.ajax({ url:'/getErpMarketByParentCode', type:'post', data:{ code:parentCode }, dataType : 'json', error:function(){ alert('error'); }, success:function(data){ var select = $('#' + id); if(select){ select.empty(); select.append($('<option>').val('').html('-請(qǐng)選擇-')); $.each(data.erpMarketList,function(i, erpMarket){ select.append($('<option>').val(erpMarket.code).html(erpMarket.name)); }); select.val(value); } } }); }
然后是后臺(tái)方法
@RequestMapping(value = "/getErpMarketByParentCode") public ModelAndView getErpMarketByParentCode(HttpServletRequest request, HttpServletResponse response) throws Exception { String code = request.getParameter("code"); List<ErpMarket> erpMarketList = erpMarketService.getErpMarketListByParentCode(code); JSONObject jsonObject = new JSONObject(); jsonObject.put("erpMarketList",erpMarketList); response.getWriter().write(jsonObject.toString()); return null; }
service方法,是從內(nèi)從中獲取省市區(qū)這張表
public List<ErpMarket> getErpMarketListByParentCode(String parentCode){ Hashtable erpMarketTable = LoadOnStartService.erpMarketTable;//從內(nèi)存中獲取這張表 List<ErpMarket> erpMarketList = new ArrayList<ErpMarket>(); Iterator its = erpMarketTable.keySet().iterator(); while(its.hasNext()){ String key = Util.getString(its.next()); ErpMarket erpMarket = (ErpMarket)erpMarketTable.get(key); if(parentCode.equals(erpMarket.getParentCode())){ erpMarketList.add(erpMarket); } } return erpMarketList; }
省市區(qū)的實(shí)體類
package com.erp.entity; /** * ErpMarket entity. * * @author MyEclipse Persistence Tools */ public class ErpMarket implements java.io.Serializable { // Fields private String code; private String shortCode; private String name; private String level; private String parentCode; // Constructors /** default constructor */ public ErpMarket() { } /** full constructor */ public ErpMarket(String shortCode, String name, String level, String parentCode) { this.shortCode = shortCode; this.name = name; this.level = level; this.parentCode = parentCode; } // Property accessors public String getCode() { return this.code; } public void setCode(String code) { this.code = code; } public String getShortCode() { return this.shortCode; } public void setShortCode(String shortCode) { this.shortCode = shortCode; } public String getName() { return this.name; } public void setName(String name) { this.name = name; } public String getLevel() { return this.level; } public void setLevel(String level) { this.level = level; } public String getParentCode() { return this.parentCode; } public void setParentCode(String parentCode) { this.parentCode = parentCode; } }
以上就是本文的全部內(nèi)容,希望對(duì)大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。
- PHP+Mysql+Ajax+JS實(shí)現(xiàn)省市區(qū)三級(jí)聯(lián)動(dòng)
- JS制作簡單的三級(jí)聯(lián)動(dòng)
- javascript實(shí)現(xiàn)省市區(qū)三級(jí)聯(lián)動(dòng)下拉框菜單
- 省市區(qū)三級(jí)聯(lián)動(dòng)下拉框菜單javascript版
- jquery+json 通用三級(jí)聯(lián)動(dòng)下拉列表
- js實(shí)現(xiàn)一個(gè)省市區(qū)三級(jí)聯(lián)動(dòng)選擇框代碼分享
- js實(shí)現(xiàn)三級(jí)聯(lián)動(dòng)效果(簡單易懂)
- ASP+JS三級(jí)聯(lián)動(dòng)下拉菜單[調(diào)用數(shù)據(jù)庫數(shù)據(jù)]
- 原生js三級(jí)聯(lián)動(dòng)的簡單實(shí)現(xiàn)代碼
- 從QQ網(wǎng)站中提取的純JS省市區(qū)三級(jí)聯(lián)動(dòng)菜單
相關(guān)文章
Javascript的getYear、getFullYear、getUTCFullYear異同分享
getYear、getFullYear、getUTCFullYear都是Javascript的Date對(duì)象的方法函數(shù)2011-11-11javascript嚴(yán)格模式詳解(含嚴(yán)格模式與非嚴(yán)格模式的區(qū)別)
這篇文章主要介紹了javascript嚴(yán)格模式詳解(含嚴(yán)格模式與非嚴(yán)格模式的區(qū)別),文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧2019-11-11Javascript 數(shù)組添加 shuffle 方法的實(shí)現(xiàn)代碼
PHP 里面有個(gè)非常方便的打亂數(shù)組的函數(shù) shuffle() ,這個(gè)功能在許多情況下都會(huì)用到,但 javascript 的數(shù)組卻沒有這個(gè)方法,沒有不要緊,可以擴(kuò)展一個(gè),自己動(dòng)手,豐衣足食嘛。2009-09-09js抽獎(jiǎng)實(shí)現(xiàn)隨機(jī)抽獎(jiǎng)代碼效果
這篇文章主要介紹了js隨機(jī)抽獎(jiǎng)代碼效果,大家參考使用2013-12-12Three.js實(shí)現(xiàn)3D機(jī)房效果
這篇文章主要為大家詳細(xì)介紹了Three.js實(shí)現(xiàn)3D機(jī)房效果,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2018-12-12JavaScript實(shí)現(xiàn)多張圖片放大鏡效果示例【不限定圖片尺寸,rem單位】
這篇文章主要介紹了JavaScript實(shí)現(xiàn)多張圖片放大鏡效果,結(jié)合實(shí)例形式分析了javascript實(shí)現(xiàn)不限定圖片尺寸,采用rem單位的多張圖片縮放功能相關(guān)操作技巧,需要的朋友可以參考下2019-05-05