EasyUi는 데이터베이스에 전화하여 지방, 도시, 카운티 및 지구 간의 3 단계 연계의 영향을 달성합니다.
1. 첫째, 그림과 같이 데이터베이스를 설계하십시오. 하나에는 4 개의 필드 코드, 참고, 파이코드가 있습니다. 코드 : 행정 부서 코드, 참고 : 중국 주석, 파이 코드 : Pinyin 약어. 코드는 6 개의 필드로 구성됩니다. 그것이 지방 차원이라면, 그것은 0,000, 그것이 현 도시라면 00이고, 다른 하나는 카운티와 지구입니다.
관련 데이터베이스 코드를 CSDN 리소스에 업로드했으며 필요한 학생들이 직접 다운로드 할 것입니다.
2. 나는 easyui 컨트롤과 결합 된 Java, SSH 프레임 워크를 사용합니다.
3. HTML 코드는 다음과 같습니다
<tr> <td> province : </td> <td> <입력 이름 = "contact.province"id = "province"> </td> city : </td> <td> <입력 이름 = "contact"id = "city"> </td> <td> 카운티 및 지구 <input name = "ind ="id = "id =" > </td> </tr>
4. 해당 JS 코드는 다음과 같습니다
$ (function () {// 드롭 다운 상자에서 컨트롤을 선택하십시오. 드롭 다운 상자의 내용은 데이터베이스 정보를 동적으로 쿼리하는 것입니다. Textfield : Onhidepanel : function () {#city "). Combobox ("#county "); if (province! = '') {$ .ajax ({type : "post", url : "apply/citycombobox_combobox.action? province ="+province : false, datatype : "json", success (data) {$ ( "#city"); "loaddata"); $ ( '#city'). combobox ({editable : false, // editable state cache : false, // panelheight : 'auto', // auto-height fit valuefield : 'code', 'note', onhidepanel : function () {$ ( "#cregicounty"); $ ( "#county") var city = $ ( '#city'). combobox ( 'getValue'); if (city! = '') {$ .ajax ({type : "post", "apply/countycombobox_combox.action? city ="+cache : false, datatype : "json", success : data (data) { "#" }});}}}); $ ( "#cregicounty"). val (str)}); Countrysearch (NewValue);5. Java 액션 코드
// 국가 행정 지구 코드 지방 공개 문자열 provincombobox () 쿼리 예외 {list list = comboboxservice.findProvince (); this.jsonutil (목록); 널 리턴; } // 국가 행정 지구 코드 시티 공개 문자열 CityCombobox () 쿼리 예외 {list list = comboboxservice.findCity (Province); this.jsonutil (목록); 널 리턴; } // 국가 행정 지구 코드 카운티 및 지구 공개 문자열 카운티 및 지구 던지기 예외 {list list = comboboxservice.findcounty (City); this.jsonutil (목록); 널 리턴; } // JSON 도구 방법을 호출하고 매개 변수 ALIST Public void JsonUtil (ObjectList)을 전달합니다. 예외 {httpservletResponse reponsk = servletActionContext.getResponse (); log.info ( "JSON 형식 :" + AccountList.toString ()); String returnjson = jsonconvert.returnjson (AccountList); 응답 .SetchAracterEncoding ( "UTF-8"); Response.getWriter (). println (returnjson); }6. 도구 JSON 코드
가져 오기 java.io.stringwriter; import org.codehaus.jackson.map.objectmapper; public class jsonconvert {static String jsonst; public static string returnjson (Object)은 예외를 던지고 {ObjectMapper ObjectMapper = new ObjectMapper (); StringWriter StringWriter = new StringWriter (); ObjectMapper.writeValue (StringWriter, Object); jsonstem = stringwriter.toString (); jssonst를 반환합니다. }}7. 해당 인터페이스 코드
// 주 공개 목록 Querge findProvince ()는 예외를 던집니다. // 도시 공개 목록 찾기 (String Code)는 예외를 던집니다. // 카운티 및 지구 공개 목록 찾기 (String Code)는 예외를 던집니다.
8. 해당 인터페이스 구현 클래스 코드
// Putdown Box-- Query Public List FindProvince () {log.info ( "=== 드롭 다운 상자-쿼리 지방"); 기준 기준 = this.sessionFactory.getCurrentsession (). CreateCriteria (careacodetBlqg.class); criteria.add (제한 ( "코드", "%0000")); criteria.addorder (order.asc ( "code")); return criteria.list (); } // Putdown Box-Query City Public List FindCity (String Code2) {log.info ( "=== 드롭 다운 Box-Query City"); 문자열 id = code2.substring (0,2); 기준 기준 = this.sessionFactory.getCurrentsession (). CreateCriteria (careacodetBlqg.class); criteria.Add (제한. criteria.add (gestrictions.ne ( "code", code2)); criteria.addorder (order.asc ( "code")); return criteria.list (); } // 풀다운 상자-Query County Public List FindCounty (String Code3) {log.info ( "=== 드롭 다운 상자-쿼리 카운티"); 문자열 id = code3.substring (0,4); 기준 기준 = this.sessionFactory.getCurrentsession (). CreateCriteria (careacodetBlqg.class); criteria.add (gestrictions.like ( "code", id+"%")); criteria.add (gestrictions.not (extrictions.like ( "code", "%01"))); criteria.add (gestrictions.ne ( "code", code3)); criteria.addorder (order.asc ( "code")); return criteria.list (); }위는이 기사의 모든 내용입니다. 모든 사람의 학습에 도움이되기를 바랍니다. 모든 사람이 wulin.com을 더 지원하기를 바랍니다.