问题

问题:在 ArcGIS Web AppBuilder 的“搜索”微件中返回的建议和结果有限或不匹配

Last Published: April 23, 2021

描述

在 ArcGIS Web AppBuilder 中,“搜索”微件可用于在地图上查找位置或搜索要素。 在某些情况下,在地图上搜索位置或要素时,返回的建议或结果有限,并且不会返回所需的位置或要素。 例如,下图显示了搜索“park”时在“搜索”微件中返回的 6 个建议,但实际上有 24 个要素的名称以“park”开头,如属性表的 Park ID 字段中所示。

“搜索微件”中的返回建议有限并且未列出所需结果。

在某些情况下,尝试使用“搜索”微件在地图上搜索位置或要素,但未返回任何结果。 按下键盘上的 Enter 键或单击“搜索”按钮将返回一条消息:“无结果。 未找到“<searched_item>”的结果。”

搜索要素或位置时,“搜索”微件中将显示一条返回消息。

当已搜索的要素或位置返回多个匹配建议或结果时,按下键盘上的 Enter 键或单击“搜索”按钮将缩放至结果列表中的第一个结果,而非完全匹配。 例如,下图显示了地图将缩放至结果列表中的第一个结果 (Park A1),而非完全匹配 Park A。用户必须滚动结果列表并手动单击完全匹配才能缩放至该结果。

搜索要素或位置时,按下键盘上的 Enter 键或单击“搜索”微件中的“搜索”按钮将缩放至结果列表中的第一个结果,而非最佳匹配。

原因

以下是此问题的已知原因:

  • 如果未配置“搜索”微件设置中的“最大建议数”和“最大结果数”,则将返回有限的建议和结果。 默认情况下,可搜索图层中返回的最大建议数和最大结果数为 6。
  • 选中“仅在当前地图范围内搜索”复选框时,将返回有限的建议和结果。
  • 如果未配置搜索字段参数,或者图层不是托管要素图层,则将显示返回消息。 未在 ArcGIS Online 中托管直接添加至 web 地图的图层,并且无法在“搜索”微件设置中添加其作为搜索源。
  • 如果未选中“完全匹配”复选框,则按下键盘上的 Enter 键或单击“搜索”微件中的“搜索”按钮将缩放至搜索结果列表中的第一个结果。

解决方案或解决方法

根据具体原因,请使用以下选项之一来解决这一问题。

配置为可搜索图层返回的最大建议数和最大结果数

在 ArcGIS Web AppBuilder 中,根据地图上的要素总数,增大在“搜索”微件中返回的最大建议数和最大结果数。

  1. 在 ArcGIS Web AppBuilder 的微件选项卡上,浏览至搜索微件并将光标悬停在该微件上,然后单击配置此微件
微件选项卡将显示在 ArcGIS Web AppBuilder 应用程序中找到的默认微件列表。
  1. 配置搜索窗口的搜索源设置下,单击可搜索图层或地理编码服务。
  2. 根据地图上的要素总数,增大在最大建议数最大结果数
最大建议数最大结果数的最大值为 999,999,999,999,999。
  1. 单击确定
在“配置搜索”窗口中配置“最大建议数”和“最大结果数”字段以更改该字段的最大值。
  1. 微件选项卡中,单击保存以保存配置。

下图显示了在 ArcGIS Web AppBuilder 中使用搜索微件搜索要素或位置时返回的所有匹配建议。

“搜索”微件中显示的建议数量将根据“最大建议数”字段而增加。

取消选中“仅在当前地图范围内搜索”复选框以显示所有匹配的建议和结果

在 ArcGIS Web AppBuilder 中,取消选中仅在当前地图范围内搜索复选框以显示“搜索”微件中返回的所有匹配建议和结果,而不考虑地图范围。

  1. 在 ArcGIS Web AppBuilder 的微件选项卡上,浏览至搜索微件并将光标悬停在该微件上,然后单击配置此微件
  2. 配置搜索窗口的搜索源设置下,单击可搜索图层,然后取消选中仅在当前地图范围内搜索复选框。
  3. 单击确定
取消选中“搜索”微件的“仅在当前地图范围内搜索”复选框以搜索所有匹配结果,而不考虑地图范围。
  1. 微件选项卡中,单击保存以保存配置。

确保添加托管要素图层作为搜索源并配置搜索字段参数

在 ArcGIS Online 中将图层另存并发布为托管要素图层以添加其作为搜索源,然后在搜索微件设置中为搜索字段添加字段。

: 对于已在“搜索”微件设置中添加为搜索源的托管要素图层,无需以下步骤 1 到 5c。
  1. 登录到 ArcGIS Online。 单击内容 > 我的内容
  2. 在 Map Viewer Classic 中,将图层另存并发布为 ArcGIS Online 中的托管要素图层。
    1. 我的内容页面中,浏览至该 web 地图,单击更多选项 单击“更多选项”按钮以显示下拉列表。,然后选择在 Map Viewer Classic 中打开
    2. 在 Map Viewer Classic 的内容窗格中,浏览至非托管要素图层,单击更多选项 单击“更多选项”按钮以显示下拉列表。,然后选择保存图层
    3. 创建项目窗口中,指定标题标签字段。 单击创建项目
为非托管要素图层创建一个项目并将其发布为 ArcGIS Online 中的托管要素图层。
  1. 内容窗格中,浏览至该图层,单击更多选项 单击“更多选项”按钮以显示下拉列表。,然后选择移除
  2. 单击保存以保存该地图。
  3. 在左上角中,单击主页下拉列表并选择内容
单击“主页”下拉列表,然后选择“内容”以转至“内容”页面。
  1. 内容页面的我的内容选项卡上,浏览至该要素图层,单击更多选项 单击“更多选项”按钮以显示下拉列表。,然后选择查看项目详细信息
  2. 在项目详细信息页面上,单击发布
  3. 发布窗口中,指定标题标签字段,然后单击发布
  4. 单击内容 > 我的内容
  5. 浏览至该 web 地图,单击更多选项 单击“更多选项”按钮以显示下拉列表。,然后选择在 Map Viewer Classic 中打开
  6. 在 Map Viewer Classic 的顶部面板中,单击添加 > 搜索图层
  7. 我的内容窗格中,浏览至该托管要素图层,然后单击添加 单击“添加”按钮以将托管要素图层添加至地图。 以将其添加至 web 地图。
  8. 单击保存以保存该地图。
  1. 在左上角中,单击主页下拉列表并选择内容
  2. 内容页面的我的内容选项卡中,浏览至 ArcGIS Web AppBuilder 应用程序,单击更多选项 单击“更多选项”按钮以显示下拉列表。,然后选择编辑应用程序
  3. 在 ArcGIS Web AppBuilder 中,添加托管要素图层作为搜索源,然后配置搜索字段。
    1. 在 ArcGIS Web AppBuilder 的微件选项卡上,浏览至搜索微件并将光标悬停在该微件上,然后单击配置此微件
    2. 配置搜索窗口的搜索源设置下,将鼠标悬停在添加搜索源上,然后选择要素图层
在“搜索”微件中添加要素图层作为搜索源。
  1. 设置图层源窗口中,选择托管要素图层。 单击确定
  2. 配置搜索窗口的搜索源设置下,单击该图层,然后单击搜索字段旁的铅笔图标。
在“搜索”微件设置中添加一个或多个搜索字段以搜索相应字段中的要素。
  1. 设置搜索字段窗口中,选中一个或多个字段,然后单击确定
  2. 配置搜索窗口中,单击确定
  1. 微件选项卡中,单击保存以保存配置。

选中“完全匹配”复选框以搜索并缩放至完全匹配的要素

当地图上的多个要素具有相似名称时,请选中完全匹配复选框以在地图上搜索并缩放至完全匹配的要素。

: 按照设计,如果未选中完全匹配复选框,则按下键盘上的 Enter 键或单击搜索按钮时,地图将缩放至搜索微件的搜索结果列表中的第一个匹配结果。 这是因为将根据要素的 ObjectID 对搜索结果进行排序。
  1. 在 ArcGIS Web AppBuilder 的微件选项卡上,浏览至搜索微件并将光标悬停在该微件上,然后单击配置此微件
  2. 配置搜索窗口的搜索源设置下,单击可搜索图层,然后选中完全匹配复选框。
  3. 单击确定
  4. 微件选项卡中,单击保存以保存配置。

下图显示了在 ArcGIS Web AppBuilder 中搜索要素,然后按下键盘上的 Enter 键或单击搜索微件中的搜索按钮时,地图将缩放至完全匹配的要素。

如果选中“完全匹配”复选框,则按下键盘上的 Enter 键或单击“搜索”微件中的“搜索”按钮将缩放至完全匹配的要素。

文章 ID: 000025486

接收通知并查找新问题或常见问题的解决方案

从我们全新的 AI 聊天机器人中获得简明答案和视频解决方案。

下载 Esri 支持应用程序

获取来自 ArcGIS 专家的帮助

联系技术支持部门

下载 Esri 支持应用程序

转至下载选项