zoukankan      html  css  js  c++  java
  • Visualforce入门第五篇_2017.3.1

    Visualforce添加过滤器,实现数据的筛选

    参考原文:https://trailhead.salesforce.com/modules/visualforce_fundamentals/units/visualforce_standard_list_controllers(官方开发文档)

    代码:

    <apex:page sidebar="false" standardController="Contact" recordSetVar="contacts">
    <apex:form>
    <apex:pageBlock title="Contact List" id="contacts_list">
    Filter:
    <apex:selectList value="{!filterId}" size="1">
    <apex:selectOptions value="{!listViewOptions}"/>
    <apex:actionSupport event="onchange" reRender="contacts_list"/>
    </apex:selectList>
    <!--Contacts List-->
    <apex:pageBlockTable value="{!contacts}" var="ct">
    <apex:column value="{!ct.FirstName}"/>
    <apex:column value="{!ct.LastName}"/>
    <apex:column value="{!ct.Phone}"/>
    <apex:column value="{!ct.Title}"/>
    </apex:pageBlockTable>
    </apex:pageBlock>
    </apex:form>
    </apex:page>

    代码解释:

    1. <apex:pageBlock title="Contact List" id="contacts_list">设置一个Id,作为标识,因为这里用的是Ajax技术进行局部实时刷新。组件和reRender的组合效果是仅更新reRender属性中命名的页面部分。 因为您向<apex:pageBlock>中添加了id =“contacts_list”,所以操作完成后,只会更新<apex:pageBlock>,而不会重新加载整个页面。
    2. 当页面加载时,<apex:selectList>构建一个可用过滤器的菜单,通过从{! listViewOptions}表达式。 listViewOptions是标准列表控制器提供的属性。
      当您从菜单中选择新选项时,onchange事件由<apex:actionSupport>组件触发。
      当onchange激发时,页面通过将新项目提交到filterId属性,在<apex:selectList>中设置,提交回选择的新列表视图。
      当属性更新时,页面从服务器获取一个新的响应,在联系人变量中有一个新的匹配记录集合。
      但是因为<apex:actionSupport>指定仅重新渲染页面的一部分,所以使用Ajax异步JavaScript来更新页面,而不是通过完整页面重新加载。

  • 相关阅读:
    校软第二次考核11.11
    计算机视觉入门live笔记
    大数阶乘题解
    校软招新考试 原卷 题解
    校软件班招新考试A卷 题解
    【好题】最短路变形+dp——ICPC NCNA 2018G
    贪心/二分——cf1342D
    思维+贪心+dp——cf1341D
    【经典】容斥+排列组合——cf1342E
    计算几何+求质心+求多边形与圆交面积——ICPC GNYR 2019
  • 原文地址:https://www.cnblogs.com/android-it/p/6490648.html
Copyright © 2011-2022 走看看