用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中的值就出来了
分享到:
相关推荐
在JavaServer Faces (JSF)框架中,`action`, `actionListener`, 和 `valueChangeListener` 是三个重要的事件处理机制,它们各自在不同的场景下发挥着作用。下面将详细解释这三个概念的区别以及它们在JSF中的应用。 ...
下面我们将详细探讨JSF动态创建表单控件的概念、实现方法以及相关的实例。 1. **JSF控件基础**: JSF中的控件通常由UIComponent、UIInput和UICommand等接口实现,它们代表了HTML元素,如文本框、按钮等。这些控件...
总的来说,JSF实现登录功能的关键步骤包括创建前端表单,绑定数据到Managed Bean,定义登录动作,以及在后端验证用户凭据。这个简单的例子为初学者提供了一个理解JSF处理用户交互和业务逻辑的基础。
这可以通过在Bean中定义验证方法或者使用JSF提供的Validator接口实现。 5. **会话管理**:在登录成功后,通常会将用户信息保存在session中,以便后续页面访问时能识别用户身份。JSF提供了`FacesContext`对象来操作...
JSF组件库提供了一系列预定义的UI组件,如按钮、表单、列表等,这些组件可以直接在页面上使用,与后端数据进行交互。 批量删除通常涉及到用户选择多个项目进行一次性移除。在JSF中,我们可以通过`h:...
在本案例中,可能涉及到使用Ajax来实现动态加载表单数据、实时验证用户输入或动态显示结果。虽然名称中包含XML,但实际的Ajax通信并不局限于XML,也可以使用JSON等其他格式的数据。 5. **源代码分析**:提供的...
在JavaScript Server Faces (JSF)框架中,获取表单数据是常见的操作,这对于处理用户输入、验证和业务逻辑处理至关重要。本文将详细讲解两种方法来获取JSF表单中的数据。 1. EL(Expression Language)表达式 EL是...
在本项目中,我们主要探讨的是如何利用JavaServer Faces (JSF) 框架实现分页功能,并结合MySQL数据库和SQL语句进行数据管理。JSF是一种用于构建Web应用程序的MVC(Model-View-Controller)框架,它提供了一种组件化...
在实际开发中,开发者可以根据项目需求、团队熟悉度、性能要求以及对最新特性的需求来决定使用哪个JSF实现。例如,如果你的项目需要最新的JSF特性,那么官方实现可能是首选;如果重视开源社区的贡献和自定义组件,...
在这个"JSF实现的CRUD例子 myeclipse"中,我们将探讨如何使用JSF和MyEclipse开发一个简单的CRUD(Create, Read, Update, Delete)应用,而无需连接到数据库。 首先,"first-java-server-faces-tutorial-en.pdf"可能...
Sun Microsystems(后来被Oracle收购)是JSF规范的主要推动者和实现者。在这个压缩包中,你获得了JSF 1.2版本的源代码,这是JSF发展的一个早期版本,对于学习和理解JSF的工作原理非常有帮助。 JSF的核心概念包括...
总之,使用JSF和MyFaces实现文件上传虽然需要一些额外的配置和处理,但通过遵循上述步骤和最佳实践,可以有效地在JavaWeb应用程序中实现这一功能。这不仅提高了用户体验,也增强了应用程序的功能性和实用性。
在JavaScript Server Faces (JSF) 中,实现多语言国际化是一项重要的功能,它允许应用程序为不同地区的用户提供...这个过程涉及到资源文件的创建、配置文件的设置以及视图层的使用,是一个全面的 JSF 国际化实现示例。
在这个"jsf实现增删改查的一个简单例子"中,开发者使用了JSF 2.2版本,这是一个功能丰富的更新,包括对CDI(Contexts and Dependency Injection)的更好支持,以及更多的性能优化和用户体验改进。 JSF 2.2的核心...
例如,在表单提交、数据验证、下拉列表填充等场景中,使用Ajax可以实现异步请求,避免页面的完全刷新,使得操作更加流畅。 ### 具体实现细节 虽然提供的内容中包含了一些无法解析的字符,但从可读部分推测,这里的...
在JSF 1.2中,我们经常需要处理数据的迭代和展示,这通常通过使用特定的组件或标签来实现。JSF(JavaServer Faces)是一个用于构建用户界面的Java框架,它允许开发者使用声明式的方式处理用户交互和数据绑定。在给定...
在本文中,我们将深入探讨如何使用JSF来实现在Web应用程序中下载文件的功能。主要涉及的关键知识点包括: 1. **JSF上下文环境获取**: 在`downloadFile`方法中,首先通过`FacesContext.getCurrentInstance()`获取...
在本文中,我们将深入探讨如何使用JavaServer Faces (JSF) 框架与PrimeFaces库结合,构建一个基于HTML、CSS和JavaScript的网盘应用前端。PrimeFaces是一个流行的Java库,提供了丰富的UI组件,使得开发高质量的Web...
下面将详细介绍如何使用JSF实现文件上传,以及涉及到的关键技术和注意事项。 ### 1. JSF的文件上传组件 JSF提供了`<h:inputFile>`组件来实现文件上传的功能。这个组件允许用户选择本地文件,并将其上传到服务器。...
在本项目中,“jsf+javabean+jdbc完成对表增删查改”指的是使用JSF与JavaBean以及JDBC技术来实现对数据库中表格的基本操作:添加(Insert)、删除(Delete)、查询(Query)和修改(Update)。 首先,让我们深入...