用JSF的valueChangeListener也是可以实现表单联动的,当下拉框中选择一个值后,会往后台backbean中传入刚才所选中的ID,这个ID可以做为另外一个下拉框内容的查询条件,具体如下:
JSP页面
下拉框1:
<h:panelGroup>
<h:selectOneMenu id="planID" value="#{testBB.planID}" onchange="submit();" valueChangeListener="#{testBB.changeStatus}">
<c:selectItems value="#{testBB.queryList}"></c:selectItems>
</h:selectOneMenu>
</h:panelGroup>
下拉框1中的内容在页面进行初始化的时候对数据库进行查询,将查询到的结果封装到list中,在页面上用selectOneMenu一关联就出来了。主要是看它是怎么和另一个下拉框关联起来的,当下拉框1选中内容时,会触发onchange事件,此时会调用valueChangeListener中指定的方法,同时会将选中值的ID传入后台,代码如下:
public void changeStatus(ValueChangeEvent event){
......
planID = event.getNewValue().toString();//得到页面传过来的planID
......
resultList = testucc.getPersons(planID);//调用查询数据库的语句
}
这样根据第一个下拉框传过来的planID查询出来的结果就封装到了list中,getPersons方法是对查询结果进行具体封装的
下拉框2:
<h:panelGroup>
<h:selectOneMenu id="itemID" value="#{testBB.itemID}">
<c:selectItems value="#{testBB.resultList}"></c:selectItems>
</h:selectOneMenu>
</h:panelGroup>
通过与resultList进行关联下拉框2中的值就出来了
分享到:
相关推荐
JSF中action,actionListener,valueChangeListener的区别
这是一个使用jsf框架实现简易登录功能的小例子,对于初学者可以参考一下。
JSF+hibernate实现批量删除,CRUD
java server face动态创建表单控件实例
第2部分-动态JSF表单(CSS、JavaScript和JSF联合打造 Ajax应用程序).zip
这一个是以前写的 建议建议不要下载 不好 不要下载 不好不要下载
用jsf实现了分页,是将上一个jsp系统进行改造而成。有建表的sql语句,还用到了java反射。整个结构耦合度低,代码清晰易懂!
jsf实现多语言国际化demo
这是JSF标准的实现框架,一个是JSF2.0的官方实现,一个是JSF2.2的Apache MyFaces实现。
JSF实现的CRUD例子 myeclipse,未用数据库,加载到myeclipse里可以直接在tomcat里运行
教你使用JSF和MyFaces实现文件上载。
最近学习JSF,但资料较少,国内学习的人不多,自己摸索,采用JSF2.2、Hibernate5.0实现的一个JSF例子,简单实现了增删改查,尚未实现分页
NULL 博文链接:https://xiaohewoai.iteye.com/blog/385921
jsf结合ajax实现文件上传,值得阅读
sun的jsf接口和实现的源文件下载,也可以在玻璃鱼项目中下载到!
国内比较好的jsf1.2实现,并且和ajax结合
JEE JSF框架实现网盘的后台代码,采用JPA技术连接数据库。
eclipse 3.3 Tomcat 6.x 包括 ajax jsf tag 的练习 还有循环,迭代模仿(Struts)
jsf后台 + primefaces (html,css,javascript)前端实现网盘技术网页源代码。
jsf1.2+ejb3.0实现的员工管理系统,做成了部分:一部分是ejb端,实现业务逻辑;另一部分是web端,实现web浏览。通过这个实例,你可以学会用jsf1.2和ejb3去做企业项目。内附源代码、分析和部署文档。