JSF如何动态生成固定表头和行标的DataTable

这篇文章主要介绍“JSF如何动态生成固定表头和行标的DataTable”,在日常操作中,相信很多人在JSF如何动态生成固定表头和行标的DataTable问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答”JSF如何动态生成固定表头和行标的DataTable”的疑惑有所帮助!接下来,请跟着小编一起来学习吧!

创新互联是一家集网站建设,同安企业网站建设,同安品牌网站建设,网站定制,同安网站建设报价,网络营销,网络优化,同安网站推广为一体的创新建站企业,帮助传统企业提升企业形象加强企业竞争力。可充分满足这一群体相比中小企业更为丰富、高端、多元的互联网需求。同时我们时刻保持专业、时尚、前沿,时刻以成就客户成长自我,坚持不断学习、思考、沉淀、净化自己,让我们为更多的企业打造出实用型网站。

自己在写JSF动态生成DataTable的时候也查阅了很多相关文章, 以及实现固定表头等等。

在解决固定表头问题上我是用的两张表(加行标是3张表)实现的, 因为我发现如果用JSF1.1的化实现固定表头几乎不可能(如果有人有好的想法, 比如用JS比较在行的朋友请告诉我解决方法, 谢谢)

实现给每个Header加上一个CommandLink的时候我遇到了很大的问题, 就是无论如何通过JSF动态生成的这些CommandLink都没有办法触发事件(并不报错), 这个问题足足折磨了我3天。。。

***终于发现问题的所在, 是因为我在生成CommandLink的时候没有给每个CommandLink  SetID。。。 就加上这句话,问题立马解决。

我原来的代码是链接数据库的, 但是这样的化大家也没有办法参考, 所以我对代码少加修改, 就算是个小例子吧, 可重用。

希望大家对我的代码提出JSF动态生成固定表头和行标的DataTable的意见,一起进步,谢谢。

<%@ taglib uri="http://java.sun.com/jsf/core" prefix="f"%> 
<%@ taglib uri="http://java.sun.com/jsf/html" prefix="h"%> 
 
  var tdW;  
  //Scroll  
  function f_scroll(Col_T,Row_T,DivNm){  
    if(Col_T!=''){  
      document.getElementById(Col_T).scrollLeft = document.getElementById(DivNm).scrollLeft;  
    }  
    if(Row_T!=''){  
      document.getElementById(Row_T).scrollTop = document.getElementById(DivNm).scrollTop;  
    }  
  }  
Script> 
 
  
   
   TABLEtitle> 
  <link rel="stylesheet" type="text/css" href="styles.css"> 
 head> 
<body> 
 <h:form> 
  <font size="2" color="black" 
    style="position:absolute; left: 35; top: 5; width:200; height:20"> 
      <h:outputText value="Please Enter:" /> font> 
   <h:inputText value="" size="20" 
      style="position:absolute; left: 110; top: 5; width:150; height:20" /> 
   <h:commandButton value="Search" action="" 
      style="position:absolute; left: 270; top: 5; width:50; height:20" />
<table BORDER=0 
      STYLE="POSITION: ABSOLUTE; LEFT: 0px; TOP: 30px; right: 0px; bottom: 0px;"> 
   <tr> 
      <td STYLE="text-align: right;"> 
           
            
       td> 
     <td> 
          
         <Div ID="Table2" 
         STYLE="position: relative; top: 0; border-left: 0.5pt solid black;  
            border-right: 0.5pt solid black; height: 17.75px; width: 285px; overflow-x: hidden;"> 
          <h:dataTable value="#{myBean.myHeader}" var="myHeader" 
              binding="#{myBean.headerDataTable}" bgcolor="white" border="1" 
              cellspacing="1" rendered="true" styleClass="orders" 
              headerClass="ordersHeader" rowClasses="evenColumn,oddColumn" 
              style="position:absolute; left: 0; top: 0;   
                    width: 100; height: 10; border-collapse:collapse;"  
           id="ree"> 
         h:dataTable> 
       Div> 
        
    td> 
tr> 
<tr> 
  <td STYLE="vertical-align: top;"> 
      
   <Div ID="Table3" 
      STYLE="border-bottom: 0.5pt solid black; border-top: 0.5pt solid black;   
       width: 25.5px; height: 265px; overflow-y: hidden; position: relative; left: 0;"> 
    <h:dataTable value="#{myBean.myNum}" var="myNum" 
       binding="#{myBean.numDataTable}" bgcolor="white" border="1" 
       cellspacing="1" rendered="true" styleClass="orders" 
       headerClass="ordersHeader" rowClasses="evenColumn,oddColumn" 
       style="position:absolute; left: 0; top: 0; width: 32; height: 5; border-collapse:collapse;" 
       id="dee"> 
         h:dataTable> 
           Div> 
              
          td> 
          <td STYLE="vertical-align: top;"> 
              
          <Div ID="Table4" onScroll="f_scroll('Table2','Table3','Table4');" 
             STYLE="height: 281px; width: 300px; overflow-y: scroll; overflow-x: scroll;"> 
          <h:dataTable value="#{myBean.myList}" var="myItem" 
              binding="#{myBean.dynamicDataTable}" bgcolor="white" border="1" 
               cellspacing="1" rendered="true" styleClass="orders" 
               headerClass="ordersHeader" rowClasses="evenColumn,oddColumn" 
              style="position:absolute; left: 0; top: 0; width: 100;                                                                            height: 5; border-collapse:collapse;"> 
             h:dataTable> 
           Div> 
              
        td> 
       tr> 
      table> 
     h:form> 
    body> 
  f:view> 
html></pre><p>到此,关于“JSF如何动态生成固定表头和行标的DataTable”的学习就结束了,希望能够解决大家的疑惑。理论与实践的搭配能更好的帮助大家学习,快去试试吧!若想继续学习更多相关知识,请继续关注创新互联网站,小编会继续努力为大家带来更多实用的文章!</p>            
            
                            <br>
                本文名称:JSF如何动态生成固定表头和行标的DataTable                <br>
                文章位置:<a href="http://pwwzsj.com/article/gddhep.html">http://pwwzsj.com/article/gddhep.html</a>
            </div>
        </div>
        <div class="contentr fr">
            <h3>其他资讯</h3>
            <ul>
                <li>
                        <a href="/article/dpocpo.html">使用lsof回恢复被误删的mysql数据库文件-创新互联</a>
                    </li><li>
                        <a href="/article/dpocjc.html">bower怎么用-创新互联</a>
                    </li><li>
                        <a href="/article/dpocpd.html">面试必备利器:史上最全http状态码及请求方式-创新互联</a>
                    </li><li>
                        <a href="/article/dpochi.html">onConfigurationChanged的作用-创新互联</a>
                    </li><li>
                        <a href="/article/dpocpg.html">php微信开发接入方法的示例分析-创新互联</a>
                    </li>            </ul>
        </div>
    </div>
</div>
<!--底部-->
<footer>
    <div class="foot">
        <div class="container">
            <h1>平武火炬建站您身边的网站制作服务商</h1>
            <div class="foot1">
                <ul>
                    <li>
                        <dl><i class="iconfont"></i><b>地址ADDRESS</b></dl>
                        <p>四川-成都青羊区太升南路288号<br>
                            锦天国际A座10楼
                        </p>
                    </li>
                    <li>
                        <dl><i class="iconfont"></i><b>电话/TEL</b></dl>
                        <p><a href="tel:02886922220" target="_blank">028 86922220</a> (工作日)<br>
                            <a href="tel:18980820575" target="_blank">1898082 0575</a> ( 7x24 )
                        </p>
                    </li>
                    <li>
                        <dl><i class="iconfont"></i><b>QQ咨询</b></dl>
                        <p> 244261566 (售前)<br>
                            631063699 (售后)
                        </p>
                    </li>
                    <li>
                        <dl><i class="iconfont"></i><b>邮箱/E: mail</b></dl>
                        <p> service@cdcxhl.com (业务)<br>
                            hr@cdcxhl.com (求职)
                        </p>
                    </li>
                </ul>
            </div>
        </div>
    </div>
    <div class="copy container">
        Copyright © 2017-2023 All Rights Reserved. 青羊区火炬信息咨询工作室 版权所有  <a href="http://www.beian.miit.gov.cn/" target="_blank" rel="nofollow">蜀ICP备2024060174号-3</a>
        [原创设计,独立版权。未经许可.不得拷贝或镜像]<br>
        <a href="http://www.kswsj.cn/" target="_blank">网站营销推广</a> | <a href="https://www.cdcxhl.com/pinpai.html" target="_blank">品牌网站设计</a> | <a href="http://www.cdweb.net/" target="_blank">自适应网站制作</a> | <a href="http://cdkjz.cn/wangzhan/pinpai/" target="_blank">品牌网站制作</a> | <a href="http://chengdu.cdxwcx.cn/" target="_blank">成都网站制作</a> | <a href="https://www.cdcxhl.com/cloud/" target="_blank">云服务器</a> | <a href="https://www.cdcxhl.com/weihu/abazhou.html" target="_blank">平武网站维护</a> | (平武网站制作QQ : 631063699 )</div>
</footer>
<!--在线咨询-->
<div class="fot">
    <ul>
        <li>
            <a href="mqqwpa://im/chat?chat_type=wpa&uin=532337155&version=1&src_type=web&web_src=oicqzone.com" target="_blank">
                <img src="/Public/Home/img/fot1.png" alt="建站咨询">
                <p>在线咨询</p>
            </a>
        </li>
        <li>
            <a href="tel:18980820575" target="_blank">
                <img src="/Public/Home/img/fot2.png" alt="建站电话">
                <p>拨打电话</p>
            </a>
        </li>
    </ul>
</div>
</body>
</html>
<script>
    $(".con img").each(function(){
        var src = $(this).attr("src");    //获取图片地址
        var str=new RegExp("http");
        var result=str.test(src);
        if(result==false){
            var url = "https://www.cdcxhl.com"+src;    //绝对路径
            $(this).attr("src",url);
        }
    });
    window.onload=function(){
        document.oncontextmenu=function(){
            return false;
        }
    }
</script>