1. Get started

  2.  Welcome
  3.  Get started
  4.  Run as a Windows service
  5.  Build your first app
  6.  Requirements
  7.  Accessibility support
  8.  Development overview
  9.  About release versions
  10.  What's new
  11.  Frequently asked questions
  12. Working with apps

  13.  Home page
  14.  Create or import an app
  15.  Edit and launch an app
  16.  Choose a theme
  17.  Select a map or scene
  18.  Add widgets
  19.  Widgets overview
  20.  Configure app attributes
  21.  Preview apps on smaller screens
  22.  Export as a template
  23.  Edit or preview template
  24.  Use URL parameters
  25.  Upgrade apps
  26. Configure 2D widgets

  27.  About widget
  28.  Add Data widget
  29.  Analysis widget
  30.  Attribute Table widget
  31.  Batch Attribute Editor widget
  32.  Basemap Gallery widget
  33.  Bookmark widget
  34.  Business Analyst widget
  35.  Chart widget
  36.  Controller widget
  37.  Coordinate widget
  38.  Coordinate Conversion widget
  39.  Cost Analysis widget
  40.  Data Aggregation widget
  41.  Directions widget
  42.  Distance and Direction widget
  43.  District Lookup widget
  44.  Draw widget
  45.  Edit widget
  46.  Emergency Response Guide widget
  47.  Extent Navigate widget
  48.  Filter widget
  49.  Full Screen widget
  50.  Geocoder widget
  51.  GeoLookup widget
  52.  Geoprocessing widget
  53.  Grid Overlay widget
  54.  Gridded Reference Graphic widget
  55.  Group Filter widget
  56.  Image Measurement widget
  57.  Home Button widget
  58.  Incident Analysis widget
  59.  Infographic widget
  60.  Info Summary widget
  61.  Layer List widget
  62.  Legend widget
  63.  Measurement widget
  64.  My Location widget
  65.  Near Me widget
  66.  Network Trace widget
  67.  Oblique Viewer widget
  68.  Overview Map widget
  69.  Parcel Drafter widget
  70.  Print widget
  71.  Public Notification widget
  72.  Query widget
  73.  Related Table Charts widget
  74.  Report Feature widget
  75.  Reviewer Dashboard widget
  76.  Scalebar widget
  77.  Screening widget
  78.  Search widget
  79.  Select widget
  80.  Share widget
  81.  Situation Awareness widget
  82.  Smart Editor widget
  83.  Splash widget
  84.  Stream widget
  85.  Suitability Modeler widget
  86.  Summary widget
  87.  Swipe widget
  88.  Threat Analysis widget
  89.  Time Slider widget
  90.  Visibility widget
  91.  Zoom Slider widget
  92. Configure 3D widgets

  93.  3DFx widget
  94.  About widget
  95.  Basemap Gallery widget
  96.  Compass widget
  97.  Coordinate widget
  98.  Daylight widget
  99.  Full Screen widget
  100.  Home Button widget
  101.  Layer List widget
  102.  Legend widget
  103.  Measurement widget
  104.  My Location widget
  105.  Navigate widget
  106.  Search widget
  107.  Share widget
  108.  Slides widget
  109.  Splash widget
  110.  Zoom Slider widget
  111. Widget development

  112.  Get started
  113.  Naming conventions
  114.  In-panel and off-panel widgets
  115.  Deploy your widget
  116.  Required files
  117.  Widget manifest
  118.  Extend BaseWidget
  119.  Required properties
  120.  Define the template
  121.  Configure the Demo widget
  122.  Add i18n support
  123.  Make widgets user-friendly
  124.  Build your first app
  125.  Communication to app container
  126.  Widget properties
  127.  Make widgets responsive
  128.  Communication between widgets
  129.  Dojo dijit
  130.  Make widgets configurable in builder
  131.  Make widgets backward compatible
  132.  Create a controller widget
  133.  Widget life cycle
  134.  Add help for your widget
  135.  Create a feature action in your widget
  136.  Provide and consume data sources in widgets
  137.  Best practices for unit testing
  138. Theme development

  139.  Theme elements
  140.  Create a theme
  141. 3D development

  142.  3D development guide
  143. Sample code

  144.  Create a custom in-panel widget
  145.  Create a ListView widget
  146.  Create a custom widget using the Report dijit
  147.  Create a new theme
  148.  Create a new style for a theme
  149.  Create a new default layout
  150.  Create a nondefault layout
  151.  Create a new panel
  152.  Create a new layout widget
  153.  Create a controller widget
  154.  Create a feature action in your widget
  155.  Send a layer to the Attribute Table widget
  156.  Open multiple widgets simultaneously
  157.  Use other libraries
  158.  Change the URL of ArcGIS API for JavaScript
  159. Deployment

  160.  Deploy your app
  161.  Use proxy
  162.  Web-tier authentication
  163.  Custom widget and theme deployment
  164.  Upgrade custom widgets and themes
  165. Framework reference

  166.  CSS framework
  167.  FeatureActionManager class
  168.  FilterManager class
  169.  LayerInfo class
  170.  LayerInfos class
  171.  LayerNode class
  172.  LayerStructure class
  173.  PanelManager class
  174.  SelectionManager class
  175.  Utils class
  176.  WidgetManager class
  177. dijit

  178.  FeaturelayerChooserFromMap class
  179.  FeaturelayerServiceBrowser class
  180.  FeatureSetChooserForSingleLayer class
  181.  Filter class
  182.  ImageChooser class
  183.  ItemSelector class
  184.  LayerChooserFromMap class
  185.  RendererChooser class
  186.  Report class
  187.  SnapShot class
  188.  SymbolChooser class
  189. JSON reference

  190.  App configuration
  191.  Map configuration
  192.  Widget configuration
  193.  Widget pool configuration
  194.  Widget on-screen configuration
  195.  Panel configuration
  196.  Group configuration
  197.  DataSource configuration
  198.  About
  199.  Analysis
  200.  Attribute Table
  201.  Basemap Gallery
  202.  Bookmark
  203.  Chart
  204.  Coordinate
  205.  Directions
  206.  Draw
  207.  Edit
  208.  Full Screen
  209.  Geocoder
  210.  Geoprocessing
  211.  Controller
  212.  Home Button
  213.  Image Measurement
  214.  Infographic
  215.  Layer List
  216.  Legend
  217.  Loading Page
  218.  Measurement
  219.  My Location
  220.  Near Me
  221.  Oblique Viewer
  222.  Overview Map
  223.  Print
  224.  Query
  225.  Report Feature
  226.  Reviewer Dashboard
  227.  Scalebar
  228.  Search
  229.  Share
  230.  Splash
  231.  Stream
  232.  Swipe
  233.  Time Slider
  234.  Zoom Slider
  235. What's new archive

  236.  What's new in version 2.23
  237.  What's new in version 2.22
  238.  What's new in version 2.21
  239.  What's new in version 2.20
  240.  What's new in version 2.19
  241.  What's new in version 2.18
  242.  What's new in version 2.17
  243.  What's new in version 2.16
  244.  What's new in version 2.15
  245.  What's new in version 2.14
  246.  What's new in version 2.13
  247.  What's new in version 2.12
  248.  What's new in version 2.11
  249.  What's new in version 2.10
  250.  What's new in version 2.9
  251.  What's new in version 2.8
  252.  What's new in version 2.7
  253.  What's new in version 2.6
  254.  What's new in version 2.5
  255.  What's new in version 2.4
  256.  What's new in version 2.3
  257.  What's new in version 2.2
  258.  What's new in version 2.1
  259.  What's new in version 2.0
  260.  What's new in version 1.3
  261.  What's new in version 1.2
  262.  What's new in version 1.1

Filter widget

The Filter widget allows you to limit the visibility of features in a layer. Only the features that meet the expression criteria will be visible in the map. Accordingly, other out-of-the-box widgets, if applicable, will respond to the change it makes in the layer.

Configure the Filter widget

This widget can be set to open automatically when an app starts. Hover over the widget and click the Do not open this widget when the app starts button Do not open this widget when the app starts to change the setting to Open this widget automatically when the app starts. (For widgets that you need to add to the app first, you can turn on this option after configuring the widget.)

Steps:
  1. Hover over the widget and click the Configure this widget button Configure this widget to open the configuration window.
    NoteNote:

    If you need to add the widget to the app first, click a widget placeholder on the Widget tab. In the Choose Widget window that opens, select the widget and click OK.

  2. Optionally click Change widget icon and replace it with an image of your own.

    A file explorer window appears, allowing you to select a local image file to use as the widget icon.

  3. Click + New filter and select a layer from the Layer list.
  4. On the Info tab, for Label, provide a name for the filter.
  5. Optionally change the default icon for the filter. Choose from several symbol categories or select Custom image and browse to your local images.
  6. On the Expressions tab, click + Add expression.

    A filter uses logical expressions to find and display features in a layer based on attribute values in its data. Expressions use the general form of <Field name> <condition> <Value or Field>. For example, Shelter capacity is greater than 200.

    1. From the field name list, choose the field by which to filter the layer.
    2. Choose an appropriate condition from the next list.
      NoteNote:
      • The is any of and is none of conditions accept multiple field values as input. Your expression can get data that matches any or none of the selected values, respectively.
      • Certain date-related conditions, such as in the last and not in the last, are only available for online-hosted feature services. Date-related conditions can support relative dates, such as in the last five days.
    3. Complete the expression by specifying a value or field applicable to your filter criteria. Click the Set input type button Set input type and choose one of the available options listed below.
      TipTip:

      For options that provide a list of all the attribute values, you can type a term in the search box to reduce the list and help you find a value if there are several.

      • Value—Filter based on field values by typing or choosing a value relevant to the data. Date-related values can include relative dates, such as today, yesterday, and tomorrow.
      • Field—Filter based on comparing the value in one field to the value in another field.
      • Unique—Filter based on a field value by choosing from a list of valid attribute values for the selected field.
        CautionCaution:

        Unique value filters require a 10.1 or later map service layer. The Unique option does not appear if you are creating a filter on a 10.0 or earlier service layer.

      • Unique (predefined)—Filter based on a value that users can choose from a static list that you define. By default, Ask for values is checked and the list is set to show values based on the previous expressions.
      • Multiple—Filter based on multiple field values by choosing from a list of valid attribute values for the selected field. Check all the values you want to include in the expression. This option is only supported by the is any of and is none of conditions.
      • Multiple (predefined)—Filter based on multiple values that users can select in a static list that you define. By default, Ask for values is checked and the list is set to show values based on the previous expressions.

      If applicable to the data, when you choose the date for a date field value, you can also select time by checking Show time. You must choose a date before setting the time. You can filter by time accuracy at the hour, minute, or second level. For example, if you preset Hour and Minute values and leave Second blank, users won't be able to filter based on seconds, even if the layer's attributes include second values.

      NoteNote:

      If you check the Show Time box but leave all three boxes blank for hour, minute, and second, users won't see the option to specify time as an input value for interactive filters.

  7. If you created an expression using the Value or Unique input types, optionally check the Ask for values box to set up an interactive filter for users to input values for the filter. (This option is set by default for the predefined input types.)

    With this option, you can provide a default value for the filter or leave it blank, and users choose from a list of values or type their own.

    1. For Prompt, clarify the expression, if necessary.
    2. For Hint, provide a helpful instruction for the user.
    3. If applicable, for Date options, turn off the date values that don't make sense for your data. For example, it would be illogical to include tomorrow as an option for filtering a layer that shows crime incidents. You can't turn off a value here if it's selected in your expression.

      Expression with Ask for values enabled and Date options modified

    4. If applicable, for List values, choose to show all unique values, values based on the previous expressions, or values based on all other expressions regardless of their order.
      CautionCaution:

      If your filter asks for input values and has one of the following list settings, the service must support the capability of query by statistics to display descriptions for coded values: Values filtered by previous expressions or Values filtered by all other expressions.

  8. To create multiple expressions, click + Add expression. Above the expressions, you have the option to display features in the layer that match all or any of the expressions.
  9. To create one or more sets of expressions, click + Add set. At the top of the new set, choose whether all or any of the expressions in this set should be true when filtering the layer.

    A set is a grouping of expressions, for example, Shelter capacity is greater than 200 and Status is open.

    Expressions tab showing an added set with highlighted option

  10. On the Options tab, enable any of the following settings:
    • Remove the preset layer filter from the map—Prevents filters defined in the map from being applied in your app.
    • Apply this filter when the widget is opened—Immediately applies the filter when users open the widget.
    • Collapse the filter expression (if any) when the widget is opened—Requires that users expand interactive expressions for filters that allow input values.
  11. To add another filter, repeat these steps. If you add multiple filters, you have the option to display features that match any or all of the filters. To move filters up or down, point to a filter in the list and click the arrow buttons.
  12. Optionally select Group filter by layer to sort the filters by the layer they impact.
  13. To zoom to the extent of the features displayed in the map after the filters are applied, check Zoom to the remaining features when the layer's filter is applied.
  14. To zoom to the app's initial map extent when users turn off all the filters, check Zoom to the initial map extent when layer's filters are all off. (You set the app's initial map extent on the Map tab.)
  15. Include additional buttons in the Filter widget by choosing from the following options:
    • Enable custom filter—Users can create an additional filter by building their own expressions.
    • Enable reset filters (except custom)—Users can reset the Filter widget to the app's default settings.
    • Enable turn off filters (except custom)—Users can turn off the app's filters all at once.
  16. Click OK to save and close the configuration.

Use the Filter widget

You can apply multiple filters simultaneously or apply an individual filter to the map.

Steps:
  1. Click the Filter button to open the widget.
  2. Click a filter to turn it on and limit features that appear on the map. Some filters may be turned on by default.
  3. If the app was configured to allow modifying the filter, type a value or choose values from a list. (You can click the arrow next to the filter to show or hide the input values.)

    NoteNote:
    When filtering date field attributes, if the time picker is configured, you can choose preset time values or modify them by typing in the box.

  4. If available in the app, click one of the following buttons. (You may need to click the Filter actions button to see these buttons if the app has more than one.)

    Filter widget with all possible filter action buttons

    • Create a custom filter—Define your own filter to find and display features in the layer based on attribute values in its data. Choose a layer, click Add expression or Add set, and build an expression.
      NoteNote:

      Custom filters don't support filtering time-specific attributes.

    • Reset filters (except custom)—Reset the Filter widget to the app's default settings. If you created a custom filter, it will remain unchanged.
    • Turn off filters (except custom)—Turn off the app's filters and zoom to the initial map extent. If you turned on a custom filter, it will remain on. Click the Create a custom filter button and turn off your custom filter separately.