`
ttf177
  • 浏览: 24763 次
  • 性别: Icon_minigender_1
  • 来自: 北京
最近访客 更多访客>>
社区版块
存档分类
最新评论

a4j动态绘制表格

阅读更多

  有一个页面,上下个有一个table,上面table中的每一行由一个“查看”链接,下方的table初始隐藏。点击“查看”,下方表格中的内容,根据该链接传给后台参数的不同动态改变。因为在同一个页面动态改变一部分显示,首先想到用ajax。根据上次的经验,还是用richfaces的a4j。

     因为链接在第一个table中,而要改变的第二个table,所以用 <a4j:region> </a4j:region>将这两个table包含起来。然后在第一个table中加入链接列:
<a4j:region>
  <t:dataTable value="#{ServicePermissionManage.allRelObjects}" 
          var="eltype"
          cellpadding="0"
          cellspacing="1" styleClass="listtable">
   <h:column>
      <f:facet name="header"><h:outputText value="查看版本" ></h:outputText></f:facet>
      <a4j:commandLink reRender="templatedata" action="#{ServicePermissionManage.templateLook}" oncomplete="changestyle();"> 
            <a4j:actionparam value="#{eltype.typeid}" name="typeid" assignTo="#{ServicePermissionManage.typeid}" />
            <h:graphicImage value="../images/el/dian_an2.jpg" style="border:0px;"></h:graphicImage>
      </a4j:commandLink>
   </h:column> 
  ...   ...
 </t:dataTable>
其reRender属性即为第二个table的id,action中的方法templateLook主要是得到第二个table的value对应的List;<a4j:actionparam>主要是向templateLook方法传递参数,根据typeid得到该type对应的信息。以下是第二个table对应的部分代码:
<t:dataTable   id="templatedata" value="#{ServicePermissionManage.templatedata}"              
                    var="template" cellpadding="0" cellspacing="1" style="display:none"  styleClass="listtable">
     <h:column>
         <f:facet name="header"><h:outputText value="版本号"/></f:facet>
         <h:outputText value='#{template.version}'></h:outputText>
     </h:column>
     ...   ...
  </t:dataTable>
</a4j:region>
该table对应的list即为后台bean中的templatedata,即ArrayList<Template> templatedata = new ArrayList<Template>();,而templateLook方法根据传递的typeid查库,得到对应的List并赋值给templatedata,这样第二个table就动态生成了。挺有意思吧微笑~~
最后说一点,一开始在a4j:commandLink 中使用onclick事件调用js,但第二个表格一闪就没有了,后来改成用oncomplete调用就没问题了。附上changestyle()的代码,就是改变其显示与隐藏。
<script type="text/javascript">
function changestyle(){
 var templateTable = document.getElementById('curObjForm:templatedata');
 editionTable.style.display= "";
}
</script>
分享到:
评论

相关推荐

    a4j框架应用实例简介

    通过A4J,你可以创建出更加动态和响应式的Web应用,无需过多地处理JavaScript代码,从而提高开发效率和用户体验。 A4J框架的核心功能包括: 1. **异步通信**:A4J支持在后台与服务器进行异步数据交换,这意味着...

    A4J ajax4jsf中文指南 chm

    通过A4J,开发者可以创建高度交互性和动态的Web应用,而无需深入学习复杂的JavaScript或XMLHttpRequest技术。A4J的主要目标是简化JSF中的AJAX集成,使得开发过程更高效,代码更简洁。 **二、A4J关键特性** 1. **...

    a4j 指南

    3. **EL表达式**:A4J组件可以使用JSF的Expression Language(EL)表达式来绑定数据和方法,实现动态的AJAX行为。 4. **RichFaces组件库**:除了A4J组件,RichFaces还包含其他丰富的UI组件,如数据网格、日期选择器...

    A4j 原创小案例+Spring+hibernate

    【标题】:“A4j 原创小案例+Spring+Hibernate”是一个综合性的IT学习资源,涵盖了多个关键的技术框架,旨在帮助用户理解和实践这些技术的整合应用。 【描述】:“个人做的 小例子 A4j Myfaces JSF Spring ...

    Usage of A4J.Usage of A4J.Usage of A4J.

    A4J,全称为Ajax4jsf,是一个用于JavaServer Faces (JSF)应用程序的库,它提供了丰富的AJAX功能,使用户界面更加交互性和响应性。A4J是RichFaces框架的一部分,允许开发者在JSF应用中实现异步数据更新,而无需刷新...

    JSF结合A4J技术的二级联动

    JSF配用A4J在jsp中进行的二级联动使用方法。

    ajax4jsf中文教程

    a4j:ajaxListener a4j:region a4j:page a4j:support a4j:commandLink a4j:commandButton a4j:outputPanel a4j:actionparam a4j:status a4j:loadBundle a4j:mediaOutput 5. Ajax4jsf内建的换肤功能 6. ...

    a4j richfaces 常用标签例子

    这是用richfaces3.1写的一个学习笔记。需要的看看 在jboss4.2下运行正常。 在tomcat中如果抛异常。 是因为jar包不一样导致的。可以给我发留言。我给你完整包 liucheng418@163.com

    用 Java 打印表格 到A4纸的可用代码

    根据给定文件的信息,本文将深入探讨如何使用Java打印表格到A4纸上,并解析相关代码实现。这将涉及Java打印的基础知识、API介绍以及具体的代码实现细节。 ### Java打印基础知识 在Java中,打印功能主要通过`java....

    RichFaces/ A4J API 英文版 下载 附 java 调用webservice

    标题"RichFaces/A4J API 英文版 下载 附 java 调用webservice" 提到了两个主要知识点:RichFaces和A4J API的英文版,以及Java调用Web服务。这表明我们将在讨论一个用于构建富互联网应用程序(RIA)的框架,以及...

    舒尔特方格注意力训练表格(可A4打印).xls

    舒尔特方格注意力训练表格(可A4打印)

    eplan GB-A4模板.rar

    在EPLAN GB-A4模板中,这些规定被转化为具体的设计元素和规则,如设备符号、导线颜色代码、标注方式等,确保设计人员在制作电气图纸时遵循标准,提高图纸的专业性和可读性。 3. A4尺寸的选择: A4尺寸是国际通用的...

    关于rich:fileUpload和a4j:mediaOutput的使用

    在本文中,我们将深入探讨`rich:fileUpload`和`a4j:mediaOutput`这两个组件在实际开发中的使用,特别是在处理文件上传和媒体输出时的关键知识点。它们都是RichFaces库的一部分,这是一个强大的JavaServer Faces (JSF...

    Dom生成表格和实现分页源码

    在这个场景中,“Dom生成表格和实现分页源码”指的是利用DOM操作动态生成表格,并且集成分页功能的代码实践。 首先,我们来详细探讨如何使用DOM生成表格。在HTML中,表格由`&lt;table&gt;`、`&lt;tr&gt;`(行)、`&lt;th&gt;`(表头)...

    java多页A4纸打印代码

    总结起来,这个资源提供的Java代码涵盖了多页A4打印的关键技术,包括页面格式定义、图形绘制、JPanel的多页处理和文字打印。通过学习和使用这些代码,开发者可以更好地理解和实现Java中的复杂打印功能。

    毕业设计表格A4.rar

    【毕业设计表格A4.rar】是一个压缩包文件,通常用于整理和存储与毕业设计相关的各类表格文档。在毕业设计过程中,表格是数据整理、分析和展示的重要工具,它可以帮助我们系统化地呈现研究结果,使复杂的学术内容变得...

    <h:selectOneMenu>与<a4j:support>的集合运用(JSF)

    总的来说,这篇文章和示例代码着重于JSF框架中使用Ajax技术增强用户界面交互性的方法,尤其是通过 `&lt;h:selectOneMenu&gt;` 和 `&lt;a4j:support&gt;` 组件的配合,实现动态下拉菜单和页面部分更新。这对于提高Web应用的响应...

    A4打印纸模板大全,作文稿纸模板a4打印,稿纸模板a4打印,方格纸打印模板a4,作文纸打印模板a4

    "方格纸打印模板a4"则主要适用于数学、绘画或手账等,方格提供了精确的坐标参考,便于绘制图形或计算。 在设计A4打印纸模板时,主要考虑以下几个方面: 1. **网格设计**:网格的大小、形状和颜色应适中,既不会过于...

    java生成pdf文件包含表格

    Document document = new Document(PageSize.A4, 36, 36, 36, 36); ``` 3. **创建PDF写入器**:使用`PdfWriter.getInstance()`方法创建一个PDF写入器,将其与输出流关联,可以是内存流或文件流。这将允许我们向...

Global site tag (gtag.js) - Google Analytics