Java瑣事
-I am not alone
posts - 54, comments - 30, trackbacks - 0, articles - 1
BlogJava
::
首頁
::
新隨筆
::
聯系
::
聚合
::
管理
使用DWR整合spring進行下拉框二級級聯(10月12日)
Posted on 2010-10-12 22:34
石子路口
閱讀(1812)
評論(0)
編輯
收藏
所屬分類:
網絡教學資源平臺
框架使用struts2+spring+hibernate,但這里DWR只是跟spring的整合,和其余兩個框架沒有什么關系。
目的:打開頁面時自動刷新課程,而當選擇另外的課程時,欄目下拉框會發生相應變化。
頁面代碼addContent.jsp:
<%
@ page language
=
"
java
"
import
=
"
java.util.*
"
pageEncoding
=
"
utf-8
"
%>
<%
@ taglib prefix
=
"
s
"
uri
=
"
/struts-tags
"
%>
<
html
>
<
head
>
<
meta http
-
equiv
=
"
content-type
"
content
=
"
text/html;charset=utf-8
"
>
<
title
>
FCKeditor
</
title
>
<
script type
=
"
text/javascript
"
src
=
"
/wsjx/dwr/engine.js
"
></
script
>
<
script type
=
"
text/javascript
"
src
=
"
/wsjx/dwr/util.js
"
></
script
>
<
script type
=
"
text/javascript
"
src
=
"
/wsjx/dwr/interface/contentDaoAjax.js
"
></
script
>
<
script type
=
"
text/javascript
"
>
<!--
function updateCourse()
{
var teacher
=
"
1
"
;
contentDaoAjax.getCourses(teacher , createCourses);
}
function createCourses(courses)
{
var courseObj
=
document.getElementById(
'
course
'
);
DWRUtil.removeAllOptions(courseObj);
DWRUtil.addOptions(courseObj,
{
0
:
"
請選擇
"
}
);
if
(courses.length
==
0
)
{
alert(
"
輸入有誤
"
);
}
else
{
DWRUtil.addOptions(courseObj,courses);
}
}
function updateColumn()
{
var course
=
document.getElementById(
"
course
"
).value;
contentDaoAjax.getColumns(course , createColumns);
}
function createColumns(columns)
{
var columnObj
=
document.getElementById(
'
column
'
);
DWRUtil.removeAllOptions(columnObj);
if
(columns.length
==
0
)
{
alert(
"
輸入有誤
"
);
}
else
{
DWRUtil.addOptions(columnObj,columns);
}
}
//
--> </script>
</
head
>
<
body onload
=
"
updateCourse()
"
>
<
form
>
<
table align
=
"
center
"
>
<
tr
>
<
td
><
br
/>
課程:
</
td
>
<
td
><
br
/><
select name
=
"
course
"
id
=
"
course
"
onchange
=
"
updateColumn()
"
></
select
>
</
td
>
</
tr
>
<
tr
>
<
td style
=
"
background-color: red
"
colspan
=
"
2
"
></
td
>
</
tr
>
<
tr
>
<
td
>
欄目:
</
td
>
<
td
><
select name
=
"
mknr.lm.id
"
id
=
"
column
"
><
option value
=
"
0
"
selected
>
請選擇
</
option
></
select
>
</
td
>
</
tr
>
<
tr
>
<
td
>
<
s:textfield name
=
"
mknr.title
"
size
=
"
100
"
label
=
"
題目
"
/>
</
td
>
</
tr
>
<
tr
>
<
td
>
<
input type
=
"
submit
"
value
=
"
Submit
"
>
</
td
>
</
tr
>
</
table
>
</
form
>
</
body
>
</
html
>
上面部分使用了struts2的標簽,<select name="mknr.lm.id">也是為向后面的action傳遞值做準備,這里關于ajax的配置并沒有用到name。
web.xml加入以下幾句:
<!--
DWR servlet 配置
-->
<
servlet
>
<
servlet-name
>
dwr
</
servlet-name
>
<
servlet-class
>
org.directwebremoting.servlet.DwrServlet
</
servlet-class
>
<
init-param
>
<
param-name
>
debug
</
param-name
>
<
param-value
>
true
</
param-value
>
</
init-param
>
<
load-on-startup
>
1
</
load-on-startup
>
</
servlet
>
<
servlet-mapping
>
<
servlet-name
>
dwr
</
servlet-name
>
<
url-pattern
>
/dwr/*
</
url-pattern
>
</
servlet-mapping
>
dwr.xml
<!
DOCTYPE dwr PUBLIC
"-//GetAhead Limited//DTD Direct Web Remoting 1.0//EN"
"http://www.getahead.ltd.uk/dwr/dwr10.dtd"
>
<
dwr
>
<
allow
>
<
create
javascript
="contentDaoAjax"
creator
="spring"
>
<
param
name
="beanName"
value
="contentService"
></
param
>
</
create
>
</
allow
>
</
dwr
>
因為我這里沒用到復雜的對象,而只是用到了簡單的Map(int,String),所以并不需要設置convert。如果是傳輸的是javabean,則需要進行轉換。
applicationContext.xml添加contentService的bean:
<
bean
id
="contentService"
class
="cn.edu.ujn.wsjx.managecontent.service.impl.ContentService"
>
<
property
name
="mknrDao"
>
<
ref
bean
="mknrDao"
/>
</
property
>
<
property
name
="jsjkDao"
>
<
ref
bean
="jsjkDao"
/>
</
property
>
<
property
name
="lmDao"
>
<
ref
bean
="lmDao"
/>
</
property
>
<
property
name
="yhDao"
>
<
ref
bean
="yhDao"
/>
</
property
>
</
bean
>
java類中相應的兩個方法
1
public
Map getCourses(String teacher)
2
{
3
List
<
Jsjk
>
jsjks
=
jsjkDao.findByTeacherId(
1
);
4
Map map
=
new
LinkedHashMap();
5
for
(Jsjk jsjk : jsjks)
6
{
7
Kc kc
=
jsjk.getKcId();
8
System.out.println(kc.getName());
9
map.put(kc.getId(), kc.getName());
10
}
11
return
map;
12
}
13
14
public
Map getColumns(
int
course)
15
{
16
17
List
<
Lm
>
lms
=
lmDao.findByCourse(course);
18
Map map
=
new
LinkedHashMap();
19
for
(Lm lm : lms)
20
{
21
System.out.println(lm.getName());
22
map.put(lm.getId(), lm.getName());
23
}
24
return
map;
25
}
這么一系列配置好以后,就能實現無刷新二級級聯了
新用戶注冊
刷新評論列表
只有注冊用戶
登錄
后才能發表評論。
網站導航:
博客園
IT新聞
Chat2DB
C++博客
博問
管理
相關文章:
11月21日-servlet,listener調用spring中bean
11月11日進度安排
11月9日說明
11月4日工作日志
11月3日工作日志
11月2日工作日志
11月1日工作總結及說明
java處理excel
發現json(10月24日)
10月18日 項目日志
Powered by:
BlogJava
Copyright © 石子路口
日歷
<
2010年10月
>
日
一
二
三
四
五
六
26
27
28
29
30
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
1
2
3
4
5
6
常用鏈接
我的隨筆
我的評論
我的參與
最新評論
留言簿
給我留言
查看公開留言
查看私人留言
隨筆分類
ajax
flex(1)
hibernate
Java(3)
spring
struts2(2)
工作流(6)
數據庫(1)
校外項目(2)
網絡教學資源平臺(31)
網頁制作(5)
記錄(5)
設計模式(1)
隨筆檔案
2011年5月 (3)
2011年4月 (5)
2011年3月 (3)
2010年11月 (9)
2010年10月 (24)
2010年9月 (10)
搜索
最新評論
1.?re: flex3的在myeclipse6.5中部署及第一個實例
sdfsdf
--safd
2.?re: 學習大雜燴
@黑蝙蝠
樓主自己都沒有搞醒豁,TA咋個好意思分享他自己的經驗和成果嘛!
--ocaicai
3.?re: 學習大雜燴
可以分享學習成果么~~
--黑蝙蝠
4.?re: 學習大雜燴
樓主的知識面真夠廣的...膜拜中。。。
--http://ask.zhongguoren.me
5.?re: 4月22日
這個是關于什么的文章
--新能源
閱讀排行榜
1.?"java.net.BindException: Cannot assign requested address"竟是瑞星防火墻所為(4193)
2.?struts2中select標簽的用法總結(3851)
3.?關于myeclipse和mysql中文亂碼問題(10月11日)(2783)
4.?hibernate的單向級聯刪除問題(2685)
5.?FCKeditor支持jsp的配置(myeclipse工具)(2585)
評論排行榜
1.?小心數據庫字段與關鍵字重復問題(4)
2.?"java.net.BindException: Cannot assign requested address"竟是瑞星防火墻所為(3)
3.?頁面中有幾個form(3)
4.?學習大雜燴(3)
5.?java處理excel(3)
主站蜘蛛池模板:
亚洲国产综合AV在线观看
|
337p日本欧洲亚洲大胆人人
|
91亚洲精品视频
|
日本一区二区三区免费高清
|
亚洲AV第一成肉网
|
久久噜噜噜久久亚洲va久
|
免费被黄网站在观看
|
中文字幕视频免费在线观看
|
亚洲jjzzjjzz在线观看
|
亚洲乱码中文字幕手机在线
|
57pao一国产成永久免费
|
337P日本欧洲亚洲大胆艺术图
|
久久综合图区亚洲综合图区
|
成人毛片18女人毛片免费
|
精品国产污污免费网站入口在线
|
亚洲精品国产电影午夜
|
亚洲国产日韩成人综合天堂
|
84pao国产成视频免费播放
|
国产AV日韩A∨亚洲AV电影
|
久久亚洲AV成人无码国产
|
亚洲午夜视频在线观看
|
国产一级淫片免费播放
|
1000部禁片黄的免费看
|
成年女人A毛片免费视频
|
亚洲精华国产精华精华液
|
视频免费1区二区三区
|
亚洲乱码一二三四区乱码
|
久久精品国产精品亚洲精品
|
国产精品免费视频一区
|
国产乱码免费卡1卡二卡3卡
|
免费的全黄一级录像带
|
一级成人生活片免费看
|
亚洲综合无码无在线观看
|
亚洲综合视频在线
|
在线亚洲人成电影网站色www
|
国产精品色午夜视频免费看
|
99久久99久久精品免费看蜜桃
|
免费a级毛片无码a∨免费软件
|
国产美女无遮挡免费视频
|
99无码人妻一区二区三区免费
|
久久成人免费播放网站
|