easyui combobox java_Easyui的combobox實現動態數據級聯效果

實現從數據庫中動態獲取對應的list集合,并在easyui的combobox中顯示出來。

實現的效果如下:

81d6b5c59451bc27ff96bf4b1c257108.png

f34d2d9a3632307302fa267b7b175cc0.png

12bd64e3ec8180522404ab8e822c4910.png

1、數據庫的表設計如圖所示

fdcceafedf199cce78e46f717c69d1a7.png

2、數據庫中填寫相關的數據,如圖所示。如圖所示【法律法規】是所屬欄目,因此他的字段parentid是0。【中國公民出國】、【內地居民往來港澳】是屬于法律法規的類別。因此他們的字段parentid是對應1,【法律法規】的字段categoryid是1.

7b68f79d4c5a2e04026880720bea7ae3.png

3、相關的配置:已經在前面的博客中寫了

這里就不多寫。只把關鍵代碼貼出來。

4、對應的action代碼

package crj.portal.web.management.action;

import java.io.ioexception;

import java.util.list;

import javax.servlet.http.httpservletrequest;

import javax.servlet.http.httpservletresponse;

import net.sf.json.jsonarray;

import net.sf.json.jsonobject;

import net.sf.json.jsonconfig;

import org.apache.log4j.logger;

import org.apache.struts2.servletactioncontext;

import org.hibernate.criteria;

import org.hibernate.criterion.order;

import com.sun.tools.javac.util.log;

import crj.portal.web.management.model.cpersontypetbl;

import crj.portal.web.management.service.categoryservice;

import crj.portal.web.management.service.itemservice;

import crj.portal.web.management.service.userservice;

public class itemmanageaction {

logger log=logger.getlogger(this.getclass());

private string page;

private string rows;

private string lanmuid;

private itemservice itemservice;// 依賴注入

//下拉框--查詢欄目

public string categorytbl() throws exception{

list list=itemservice.querylanmu();

this.tojsonarray(list);

return null;

}

//根據欄目的id 查詢擁有的類別

public string leibie() throws exception{

list list=itemservice.queryleibie(lanmuid);

this.tojsonarray(list);

return null;

}

public string tojsonarray(list list) throws ioexception{

httpservletresponse response = servletactioncontext.getresponse();

httpservletrequest request = servletactioncontext.getrequest();

jsonarray json = jsonarray.fromobject(list);

log.info("json格式:" +json.tostring());

response.setcharacterencoding("utf-8");// 指定為utf-8

response.getwriter().write(json.tostring());// 轉化為json格式

return null;

}

public string save() throws exception {

return this.alllist();

}

public itemservice getitemservice() {

return itemservice;

}

public void setitemservice(itemservice itemservice) {

this.itemservice = itemservice;

}

public string getpage() {

return page;

}

public void setpage(string page) {

this.page = page;

}

public string getrows() {

return rows;

}

public void setrows(string rows) {

this.rows = rows;

}

public userservice getuserservice() {

return userservice;

}

public void setuserservice(userservice userservice) {

this.userservice = userservice;

}

public categoryservice getcategoryservice() {

return categoryservice;

}

public void setcategoryservice(categoryservice categoryservice) {

this.categoryservice = categoryservice;

}

public string getlanmuid() {

return lanmuid;

}

public void setlanmuid(string lanmuid) {

this.lanmuid = lanmuid;

}

}

5、對應的接口代碼

public interface itemservice {

//下拉框--查詢欄目

public list querylanmu() throws exception;

//下拉框--查詢類別

public list queryleibie(string ids) throws exception;

}

6、對應的接口實現類代碼

public class itemserviceimpl implements itemservice {

logger log = logger.getlogger(this.getclass());

private sessionfactory sessionfactory;

//下拉框--查詢欄目

public list querylanmu() throws exception {

criteria criteria=this.sessionfactory.getcurrentsession().createcriteria(categorytbl.class);

criteria.add(restrictions.eq("parentid", 0));

criteria.addorder(order.asc("categoryid"));

return criteria.list();

}

//下拉框--查詢類別

public list queryleibie(string ids) throws exception {

int i=integer.parseint(ids);

criteria criteria=this.sessionfactory.getcurrentsession().createcriteria(categorytbl.class);

criteria.add(restrictions.eq("parentid", i));

criteria.addorder(order.asc("categoryid"));

return criteria.list();

}

public sessionfactory getsessionfactory() {

return sessionfactory;

}

public void setsessionfactory(sessionfactory sessionfactory) {

this.sessionfactory = sessionfactory;

}

}

7、對應的jsp代碼

string path = request.getcontextpath();

%>

信息管理

/* 初始化下載表格信息 */

$(function() {

// 下拉框選擇控件,下拉框的內容是動態查詢數據庫信息

$('#lanmu').combobox({

url:'itemmanage!categorytbl',

editable:false, //不可編輯狀態

cache: false,

panelheight: 'auto',//自動高度適合

valuefield:'categoryid',

textfield:'categoryname',

onhidepanel: function(){

$("#leibie").combobox("setvalue",'');

var lanmuid = $('#lanmu').combobox('getvalue');

$.ajax({

type: "post",

url: "itemmanage!leibie?lanmuid="+lanmuid,

cache: false,

datatype : "json",

success: function(data){

$("#leibie").combobox("loaddata",data);

}

});

}

});

$('#leibie').combobox({

//url:'itemmanage!categorytbl',

editable:false, //不可編輯狀態

cache: false,

panelheight: 'auto',//自動高度適合

valuefield:'categoryid',

textfield:'categoryname'

});

});

所屬欄目:

類別:

以上就是本文的全部內容,希望對大家的學習有所幫助,也希望大家多多支持萬仟網。

希望與廣大網友互動??

點此進行留言吧!

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/news/281807.shtml
繁體地址,請注明出處:http://hk.pswp.cn/news/281807.shtml
英文地址,請注明出處:http://en.pswp.cn/news/281807.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

為什么應該默認將 Class 設為密封類?

前言最近在 dotnet/sdk 上看到一個 Issue,它提出了一個有趣的要求:默認情況下將類設置為密封類(Sealed)?什么是密封類?默認情況下,類是開放的,這意味著它是可以被繼承的。例如:class BaseClass …

Spring工具類的使用

2019獨角獸企業重金招聘Python工程師標準>>> Spring-core中提供了大量的工具類,常用的有StringUtils、ObjectUtils、NumberUtils、Base64Utils等,Spring工具類在spring-core.jar中的org.springframework.util包下。 org.springframework.util…

python作業高級FTP(第八周)

作業需求: 1. 用戶加密認證 2. 多用戶同時登陸 3. 每個用戶有自己的家目錄且只能訪問自己的家目錄 4. 對用戶進行磁盤配額、不同用戶配額可不同 5. 用戶可以登陸server后,可切換目錄 6. 查看當前目錄下文件 7. 上傳下載文件,保證文件一致性 8…

java用log.i打印數組_java-使用JSCH將ssh日志打印到列表(android)

我一直試圖通過將包含我目錄名稱的log.i字符串值添加到數組中,然后使用數組適配器通過listView打印它們,來在listView中的目錄中打印項目.但是,當我嘗試運行該應用程序時,它將打印包含目錄名稱的日志,但不會在listView上打印任何內容.有什么幫助嗎?這是我的代碼&…

Edge 瀏覽器被爆存在 XSS 繞過漏洞

來自知名安全測試套件Burp Suite廠商PortSwigger的安全專家Gareth Heyes近日在微軟Edge瀏覽器的內置XSS過濾器存在繞過漏洞,這就意味著盡管微軟在Edge瀏覽器中進行了大量的安全策略部署,但用戶瀏覽網頁的時候依然有可能讓攻擊者通過這種方式在Edge瀏覽器…

來了!十大更新

面向 Windows 10 正式版用戶,微軟發布了 2022 年 10 月更新。Windows 10 版本 21H1 更新后操作系統內部版本升級至 Build 190432130/2132(帶外更新)。Windows 10 版本 21H2 更新后操作系統內部版本升級至 Build 19044.2130/2132(帶…

使用ansible 批量分發SSH Key

先確保你電腦有ansible,我是mac的用brew安裝,其他可用yum安裝brew search ansiblebrew install ansible我已經安裝好2.7了生成下自己的key,一路回車ssh-keygen -t rsa編輯host,添加需要增加ssh key的機器vi /etc/ansible/hosts【hostgroup】我…

使用Git簡單筆記

這里只是作為簡單的筆記整理,第一次使用的推薦先看一下廖大的教程,內容很多很細,可以邊看邊練、看不懂的地方先記著、爭取七七八八看下來。 心情不佳的分割線 廖雪峰的git教程: https://www.liaoxuefeng.com/wiki/001373951630592…

java中的path類_詳談java中File類getPath()、getAbsolutePath()、getCanonical的區別

簡單看一下描述,例子最重要。1、getPath():返回定義時的路徑,(就是你寫什么路徑,他就返回什么路徑)2、getAbsolutePath():返回絕對路徑,但不會處理“.”和“..”的情況3、getCanonicalPath():返…

部署站點支持Https訪問的方法

1、申請公鑰和私鑰,放到服務器 2、編輯default配置文件 改為 加上證書路徑 ps:泛域名支持admin.xxx.com、demo.xxx.com等等,而免費的Lets Encrypt僅支持www.xxx.com和xxx.com 整理自www.laravist.com轉載于:https://www.cnblogs.com/lamp01/p/6952464.ht…

.NET Core Onvif協議C#教程系列之XiaoFeng.Onvif組件庫

物聯網IOT大背景下音視頻領域的Onvif 協議在2008年成為全球性的開放接口標準。于是一批開發者涌入該技術領域使用各種編程語言對其改造升級封裝。因為是國際標準,所以規范內容比較多,物聯網領域涉及又廣,所以研究協議是一個很耗時間的一項工作…

php異常處理的深入

引出 如果你調一個類,調用時數據驗證時報了個錯,你會以什么方式返回 數組,布爾值? 數組這個可以帶錯誤原因回來,那布爾值呢? 返回了個 false, 報錯時把錯誤放在類變量里?還是專門用一個獲取錯誤…

C# 跨平臺的支付類庫ICanPay

隨著微軟的開源,越來越多的項目支持跨平臺,但是各種支付平臺提供的類庫,又老又不支持跨平臺,吐槽下,尤其是微信,還有好多坑,于是ICanPay誕生了,今天就來講ICanPay是什么,…

.NET CORE 下收發郵件之 MAILKIT

背景利用代碼發送郵件在工作中還是比較常見的,相信大家都用過SmtpClient來處理發送郵件的操作,不過這個類以及被標記已過時,所以介紹一個微軟推薦的庫MailKit來處理。MailKit開源地址:https://github.com/jstedfast/MailKit需要郵…

【20181026T2】**圖【最小瓶頸路+非旋Treap+啟發式合并】

題面 【錯解】 最大最小?最小生成樹嘛 蛤?還要求和? 點分治? 不可做啊 寫了個MST暴力LCA,30pts,140多行 事后發現30分是給dijkstra的 woc 【正解】 樹上計數問題:①并查集②啟發式合并③點分治 …

java實現關鍵詞云_Java synchronized 關鍵詞詳細說明

Java synchronized 關鍵詞詳細說明外置專業技能點系統進程和進程的定義進程建立方法進程的情況情況變換線程安全的定義synchronized 關鍵詞的幾類使用方法裝飾非靜態數據組員方式synchronized public void sync(){}裝飾靜態數據組員方式synchronized public static void sync()…

損失函數(Loss function) 和 代價函數(Cost function)

1損失函數和代價函數的區別: 損失函數(Loss function):指單個訓練樣本進行預測的結果與實際結果的誤差。 代價函數(Cost function):整個訓練集,所有樣本誤差總和(所有損失函數總和)的平均值。(這一步體現在propagate()…

Hadoop/HDFS命令

Hadoop中文手冊:http://hadoop.apache.org/docs/r1.0.4/cn/commands_manual.html 英文手冊:http://hadoop.apache.org/docs/stable/hadoop-project-dist/hadoop-common/CommandsManual.html Hadoop fs命令 hadoop fs: 該命令可以用于其他文件系統&#x…

《Node.js 入門系列》—— 一些簡單的排錯方法(一)

目錄 TypeError: undefined is not a functionTypeError: Cannot read property xxx of undefined 或者 TypeError: Cannot read property xxx of null檢查變量是未賦值檢查函數是否有返回值檢查變量是否引用了某個對象不存在的屬性檢查調用函數時是否未該傳遞參數俗話說“常在…

內置IOC容器ServiceCollection

.NetCore內置IOC容器ServiceCollection一、IOC介紹IOC:全名(Inversion of Control)-控制反轉IOC意味著我們將對象的創建控制權交給了外部容器,我們不管它是如何創建的,我們只需要知道,當我們想要某個實例時,我們可以直…