本文主要是介绍dwr实现三级联动下拉框,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
dwr:direct web remoting 是我们通过javascript方便的操作业务方法。我以一个三级联动下拉框的例子给大家演示dwr是如何实现的。我用到的技术有spring 2.0.5 ,dwr2.0.5,hibernate3.2.3.ga,struts1.2.9,主要涉及到dwr如何调用spring管理的业务方法,以及dwr如何处理返回的数据。
dwr的配置:
我要实现的是地区,市县,社区的三级下拉,比如邯郸地区,邯郸县,明珠社区,这样的下拉框,数据库表设计是这样的:
id name pid
1 邯郸 0
2 邯郸县 1
3 明珠社区 2
.....
大家一看都明白了吧。
那么如何实现呢?第一个下了框显示地区,数据可以从action或者servlet中去,也可以用dwr来去,我采取第二种方式。
html代码:
注意 cityService.getBaseCities(cb); 这行代码 cityService 是dwr暴漏给javascript的对象,用它可以操作业务方法。它是怎么设置的呢?实际上我们CityService是我们业务方法,代码如下
那么javascript如何才能调用getBaseCities()方法,来填充第一个下拉框呢?
好,dwr一个重要的配置文件上演了。
dwr.xml
allow节点下面的create 有一个属性 creator="spring" 代表我们要暴漏的服务端代码是从spring中来的。param的beanName代表根据spring配置文件配置的id来取bean,哪个bean呢? value="cityService",就是cityService这个bean. 看一下spring配置文件
这个bean就有我们要调用的getBaseCities()方法。
那么javascript如何调用呢?
打开http://localhost:8080/项目名/dwr
点击暴漏的业务类,拷贝js引用,本例代码
结合我上面的javascript的代码就可以用了。
下面我贴出全部html代码:
这篇关于dwr实现三级联动下拉框的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!