Salesforce + jQuery + dataTable + vf page

1. 首先下载jQuery 最新的版本,并上传至静态资源中

2. 下载jQuery DataTable plugin,并上传至静态资源中

https://datatables.net/


3. 建立你的apex clss:

public class YUT_DataTableExampleController{

    public ApexPages.Standardsetcontroller contactSet{
    
            get{
              if(contactSet == null){
                  contactSet = new
                  ApexPages.Standardsetcontroller(Database.getQueryLocator(
                  [SELECT Name, Phone, Email, Title, Account.Name FROM Contact]));
              }
              return contactSet;
            }
            set;
    }
    
    public List<contact> getContacts(){
          return (List<contact>) contactSet.getRecords();
    }
}

4.建立你的 VF Page 

<apex:page Controller="YUT_DataTableExampleController" docType="html-5.0">
    <head>
    
        <apex:includeScript value="{!URLFOR($Resource.jquery, '/jquery-ui-1.10.3.custom/js/jquery-1.9.1.js')}"  />


        <apex:stylesheet value="{!URLFOR($Resource.DataTables, '/DataTables-1.9.4/media/css/demo_page.css')}"  />
        <apex:stylesheet value="{!URLFOR($Resource.DataTables, '/DataTables-1.9.4/media/css/demo_table.css')}"  />
        <apex:stylesheet value="{!URLFOR($Resource.DataTables, '/DataTables-1.9.4/extras/ColReorder/media/css/ColReorder.css')}"  />
        <apex:stylesheet value="{!URLFOR($Resource.DataTables, '/DataTables-1.9.4/extras/ColVis/media/css/ColVis.css')}"  />
        <apex:stylesheet value="{!URLFOR($Resource.DataTables, '/DataTables-1.9.4/extras/TableTools/media/css/TableTools.css')}"  />
        <apex:stylesheet value="{!URLFOR($Resource.DataTables, '/DataTables-1.9.4/extras/ColumnFilterWidgets/media/css/ColumnFilterWidgets.css')}"  />
        <apex:stylesheet value="{!URLFOR($Resource.DataTables, '/DataTables-1.9.4/media/css/demo_table_jui.css')}"  />
        <apex:stylesheet value="{!URLFOR($Resource.DataTables, '/DataTables-1.9.4/examples/examples_support/themes/smoothness/jquery-ui-1.8.4.custom.css')}"  />

        <script src="{!URLFOR($Resource.DataTables, '/DataTables-1.9.4/media/js/jquery.dataTables.min.js')}"></script>  
        <script src="{!URLFOR($Resource.DataTables, '/DataTables-1.9.4/media/js/jquery.dataTables.js')}"></script>      
        <script src="{!URLFOR($Resource.DataTables, '/DataTables-1.9.4/extras/ColVis/media/js/ColVis.js')}"></script>                 
        <script src="{!URLFOR($Resource.DataTables, '/DataTables-1.9.4/extras/TableTools/media/js/ZeroClipboard.js')}"></script>          
        <script src="{!URLFOR($Resource.DataTables, '/DataTables-1.9.4/extras/TableTools/media/js/TableTools.js')}"></script>             
        <script src="{!URLFOR($Resource.DataTables, '/DataTables-1.9.4/extras/ColumnFilterWidgets/media/js/ColumnFilterWidgets.js')}"></script>

        <script type="text/javascript" charset="UTF-8">

            $(document).ready( function () {
              var oTable = $('#contacttable').dataTable( {
                  "sDom": 'WRC<"clear">lftip',
                  "bJQueryUI": true,
                  "sPaginationType": "full_numbers",
                  "aoColumnDefs": [ { "bVisible": false, "aTargets": [ ] }],
                  "oColumnFilterWidgets": { "aiExclude": [ 0, 3, 4 ] }
             });
          });

        </script>
 
    </head>

    <body>

        <h2>Contact Search Demo with jQuery, DataTables, and Visualforce"</h2>
        <h3>Try out the keyword search, show/hide columns, sort, and pagination!</h3>

        <table cellpadding="0" cellspacing="0" border="0" class="display" id="contacttable" style="margin-top:20px;">

            <thead>
             <tr>
                 <th>Name</th>
                 <th>Account</th>
                 <th>Title</th>
                 <th>Phone</th>
                 <th>Email</th>
             </tr>
            </thead>

            <tfoot>
             <tr>
                 <th>Name</th>
                 <th>Account</th>
                 <th>Title</th>
                 <th>Phone</th>
                 <th>Email</th>
             </tr>
            </tfoot>

            <tbody>

                <apex:repeat value="{!Contacts}" var="c">
                    <tr>
                      <td>{!c.Name}</td>
                      <td>{!c.Account.Name}</td>
                      <td>{!c.Title}</td>
                      <td>{!c.Phone}</td>
                      <td>{!c.Email}</td>
                  </tr>
                 </apex:repeat>

            </tbody>

        </table>

    </body>

</apex:page>

5.访问你的VF Page

http;//xxxx.force.com/apex/your_VF_page



  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值