濮阳杆衣贸易有限公司

主頁 > 知識庫 > 純JSP+DWR實(shí)現(xiàn)三級聯(lián)動(dòng)下拉選擇菜單實(shí)現(xiàn)技巧

純JSP+DWR實(shí)現(xiàn)三級聯(lián)動(dòng)下拉選擇菜單實(shí)現(xiàn)技巧

熱門標(biāo)簽:地圖標(biāo)注專業(yè)和非專業(yè) 甘肅銷售電銷機(jī)器人公司 汝南縣地圖標(biāo)注app 四川正規(guī)外呼系統(tǒng)軟件 湖北地圖標(biāo)注公司 外呼直播語音系統(tǒng) 山東ai外呼電銷機(jī)器人好用嗎 福建電銷貓機(jī)器人收費(fèi) 智能電話機(jī)器人銷售話術(shù)
網(wǎng)上看到一些例子,對于一個(gè)簡單的三級聯(lián)動(dòng),都加上什么Struts, Hibernate諸如此類的框架。這個(gè)Ajax聯(lián)動(dòng)殊不知和這些框架有什么關(guān)系,一個(gè)小Demo干嘛整得那么大。

今天我做了一個(gè)dwr+jsp做的例子。
web.xml:
復(fù)制代碼 代碼如下:

?xml version="1.0" encoding="UTF-8"?>
web-app version="2.4" xmlns="http://java.sun.com/xml/ns/j2ee"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://java.sun.com/xml/ns/j2ee
http://java.sun.com/xml/ns/j2ee/web-app_2_4.xsd">
servlet>
servlet-name>dwr-invoker/servlet-name>
servlet-class>
org.directwebremoting.servlet.DwrServlet
/servlet-class>
init-param>
param-name>debug/param-name>
param-value>true/param-value>
/init-param>
/servlet>
servlet>
servlet-name>SelectServlet/servlet-name>
servlet-class>com.action.SelectServlet/servlet-class>
/servlet>
servlet-mapping>
servlet-name>dwr-invoker/servlet-name>
url-pattern>/dwr/*/url-pattern>
/servlet-mapping>
servlet-mapping>
servlet-name>SelectServlet/servlet-name>
url-pattern>/select/url-pattern>
/servlet-mapping>
welcome-file-list>
welcome-file>index.jsp/welcome-file>
/welcome-file-list>
/web-app>

dwr.xml:
復(fù)制代碼 代碼如下:

?xml version="1.0" encoding="UTF-8"?>
!DOCTYPE dwr PUBLIC "-//GetAhead Limited//DTD Direct Web Remoting
2.0//EN" "http://www.getahead.ltd.uk/dwr/dwr20.dtd">
dwr>
!-- 沒有它DWR什么也做不了 -->
allow>
create creator="new" javascript="menu">
param name="class" value="com.dao.CountryDAO" />
/create>
!-- 要轉(zhuǎn)換的Bean -->
convert converter="bean" match="com.vo.Country" />
convert converter="bean" match="com.vo.Province" />
convert converter="bean" match="com.vo.City" />
/allow>
/dwr>

test.jsp:
復(fù)制代碼 代碼如下:

%@ page language="java" import="java.util.*,com.vo.*"
pageEncoding="GBK"%>
%@ taglib uri="http://java.sun.com/jstl/core" prefix="c"%>
html>
head>
title>DWR三級聯(lián)動(dòng)/title>
script type='text/javascript'
src='/mutiplyMenu/dwr/interface/menu.js'>/script>
script type='text/javascript' src='/mutiplyMenu/dwr/engine.js'>/script>
script type='text/javascript' src='/mutiplyMenu/dwr/util.js'>/script>
/head>
body>
script type="text/javascript">
//根據(jù)國家id查詢所屬省或州
function queryProvince()
{
var countryId = $("country").value;
//默認(rèn)為不選擇
if(countryId == 0)
{
${"province"}.options.length=0;
${"city"}.options.length=0;
}
else
{
menu.queryProvinceById(countryId,provinceCallback);
}
}
//根據(jù)國家id查詢所屬省或州的回調(diào)函數(shù)
function provinceCallback(provinces)
{
${"province"}.options.length=0;
//每次獲得新的數(shù)據(jù)的時(shí)候先把每二個(gè)下拉框架的長度清0
for(var i=0;i provinces.length;i ++){
var value = provinces[i].id;
var text = provinces[i].provinceName;
var option = new Option(text, value);
//根據(jù)每組value和text標(biāo)記的值創(chuàng)建一個(gè)option對象
try{
$("province").add(option);//將option對象添加到第二個(gè)下拉框中
}catch(e){
}
}
//同時(shí)關(guān)聯(lián)第三級
var provinceId = ${"province"}.value;
menu.queryCityById(provinceId,cityCallback);
}
//查詢所屬城市
function queryCity()
{
var provinceId = $("province").value;
menu.queryCityById(provinceId,cityCallback);
}
//查詢所屬城市回調(diào)函數(shù)
function cityCallback(citys)
{
//每次獲得新的數(shù)據(jù)的時(shí)候先把每三個(gè)下拉框架的長度清0
${"city"}.options.length=0;
for(var i=0;i citys.length;i ++){
var value = citys[i].id;
var text = citys[i].cityName;
var option = new Option(text, value);
//根據(jù)每組value和text標(biāo)記的值創(chuàng)建一個(gè)option對象
try{
$("city").add(option);//將option對象添加到第三個(gè)下拉框中
}catch(e){
}
}
}
function change1()
{
queryProvince();
}
function change2()
{
queryCity();
}
/script>
div align="center">
h3>
br>
/h3>
h3>
DWR三級聯(lián)動(dòng)演示
/h3>
!-- 我都奇怪了,我的c>標(biāo)簽在這里不能用 -->
select id="country" onchange="change1();">
option selected="selected" value="0">
請選擇
/option>
%
@SuppressWarnings("unchecked")
List list = (List) request.getAttribute("countrys");
for (int i = 0; i list.size(); i++)
{
Country temp = (Country) list.get(i);
%>
option value="%=temp.getId()%>">%=temp.getCountryName()%>/option>
%
}
%>
/select>
select id="province" onchange="change2();">
/select>
select id="city">
/select>
/div>
/body>
/html>

servlet,dao就不帖了,想了解的可以去下載源碼
您可能感興趣的文章:
  • vuejs實(shí)現(xiàn)下拉框菜單選擇
  • JS實(shí)現(xiàn)點(diǎn)擊下拉菜單把選擇的內(nèi)容同步到input輸入框內(nèi)的實(shí)例
  • javascript實(shí)現(xiàn)日期三級聯(lián)動(dòng)下拉框選擇菜單
  • 使用Javascript實(shí)現(xiàn)選擇下拉菜單互移并排序
  • 基于javascript實(shí)現(xiàn)全國省市二級聯(lián)動(dòng)下拉選擇菜單
  • js模擬淘寶網(wǎng)的多級選擇菜單實(shí)現(xiàn)方法
  • js實(shí)現(xiàn)的全國省市二級聯(lián)動(dòng)下拉選擇菜單完整實(shí)例
  • js選擇并轉(zhuǎn)移導(dǎo)航菜單示例代碼
  • javascript 三級下拉選擇菜單Levels對象
  • js實(shí)現(xiàn)圓形菜單選擇器

標(biāo)簽:白銀 昌都 梅州 黔東 南充 臨沂 吳忠 肇慶

巨人網(wǎng)絡(luò)通訊聲明:本文標(biāo)題《純JSP+DWR實(shí)現(xiàn)三級聯(lián)動(dòng)下拉選擇菜單實(shí)現(xiàn)技巧》,本文關(guān)鍵詞  純,JSP+DWR,實(shí)現(xiàn),三級,聯(lián)動(dòng),;如發(fā)現(xiàn)本文內(nèi)容存在版權(quán)問題,煩請?zhí)峁┫嚓P(guān)信息告之我們,我們將及時(shí)溝通與處理。本站內(nèi)容系統(tǒng)采集于網(wǎng)絡(luò),涉及言論、版權(quán)與本站無關(guān)。
  • 相關(guān)文章
  • 下面列出與本文章《純JSP+DWR實(shí)現(xiàn)三級聯(lián)動(dòng)下拉選擇菜單實(shí)現(xiàn)技巧》相關(guān)的同類信息!
  • 本頁收集關(guān)于純JSP+DWR實(shí)現(xiàn)三級聯(lián)動(dòng)下拉選擇菜單實(shí)現(xiàn)技巧的相關(guān)信息資訊供網(wǎng)民參考!
  • 推薦文章
    天长市| 渝中区| 城步| 册亨县| 大连市| 会同县| 湘阴县| 凤冈县| 琼海市| 雅江县| 通河县| 武邑县| 三河市| 衡山县| 乐东| 澄江县| 昭通市| 仁化县| 治多县| 邢台县| 黄浦区| 通山县| 潜山县| 喀什市| 牙克石市| 永州市| 会同县| 新干县| 封丘县| 赣榆县| 高碑店市| 车致| 昭通市| 祁东县| 莱阳市| 汽车| 万盛区| 望奎县| 岳阳县| 谢通门县| 龙口市|