描述
在 ArcGIS Web AppBuilder 中,“搜索”微件可用于在地图上查找位置或搜索要素。 在某些情况下,在地图上搜索位置或要素时,返回的建议或结果有限,并且不会返回所需的位置或要素。 例如,下图显示了搜索“park”时在“搜索”微件中返回的 6 个建议,但实际上有 24 个要素的名称以“park”开头,如属性表的 Park ID 字段中所示。
在某些情况下,尝试使用“搜索”微件在地图上搜索位置或要素,但未返回任何结果。 按下键盘上的 Enter 键或单击“搜索”按钮将返回一条消息:“无结果。 未找到“<searched_item>”的结果。”
当已搜索的要素或位置返回多个匹配建议或结果时,按下键盘上的 Enter 键或单击“搜索”按钮将缩放至结果列表中的第一个结果,而非完全匹配。 例如,下图显示了地图将缩放至结果列表中的第一个结果 (Park A1),而非完全匹配 Park A。用户必须滚动结果列表并手动单击完全匹配才能缩放至该结果。
原因
以下是此问题的已知原因:
- 如果未配置“搜索”微件设置中的“最大建议数”和“最大结果数”,则将返回有限的建议和结果。 默认情况下,可搜索图层中返回的最大建议数和最大结果数为 6。
- 选中“仅在当前地图范围内搜索”复选框时,将返回有限的建议和结果。
- 如果未配置搜索字段参数,或者图层不是托管要素图层,则将显示返回消息。 未在 ArcGIS Online 中托管直接添加至 web 地图的图层,并且无法在“搜索”微件设置中添加其作为搜索源。
- 如果未选中“完全匹配”复选框,则按下键盘上的 Enter 键或单击“搜索”微件中的“搜索”按钮将缩放至搜索结果列表中的第一个结果。
解决方案或解决方法
根据具体原因,请使用以下选项之一来解决这一问题。
配置为可搜索图层返回的最大建议数和最大结果数
在 ArcGIS Web AppBuilder 中,根据地图上的要素总数,增大在“搜索”微件中返回的最大建议数和最大结果数。
- 在 ArcGIS Web AppBuilder 的微件选项卡上,浏览至搜索微件并将光标悬停在该微件上,然后单击配置此微件。
- 在配置搜索窗口的搜索源设置下,单击可搜索图层或地理编码服务。
- 根据地图上的要素总数,增大在最大建议数和最大结果数。
注: 最大建议数和最大结果数的最大值为 999,999,999,999,999。
- 单击确定。
- 在微件选项卡中,单击保存以保存配置。
下图显示了在 ArcGIS Web AppBuilder 中使用搜索微件搜索要素或位置时返回的所有匹配建议。
取消选中“仅在当前地图范围内搜索”复选框以显示所有匹配的建议和结果
在 ArcGIS Web AppBuilder 中,取消选中仅在当前地图范围内搜索复选框以显示“搜索”微件中返回的所有匹配建议和结果,而不考虑地图范围。
- 在 ArcGIS Web AppBuilder 的微件选项卡上,浏览至搜索微件并将光标悬停在该微件上,然后单击配置此微件。
- 在配置搜索窗口的搜索源设置下,单击可搜索图层,然后取消选中仅在当前地图范围内搜索复选框。
- 单击确定。
- 在微件选项卡中,单击保存以保存配置。
确保添加托管要素图层作为搜索源并配置搜索字段参数
在 ArcGIS Online 中将图层另存并发布为托管要素图层以添加其作为搜索源,然后在搜索微件设置中为搜索字段添加字段。
注: 对于已在“搜索”微件设置中添加为搜索源的托管要素图层,无需以下步骤 1 到 5c。
- 登录到 ArcGIS Online。 单击内容 > 我的内容。
- 在 Map Viewer Classic 中,将图层另存并发布为 ArcGIS Online 中的托管要素图层。
- 在我的内容页面中,浏览至该 web 地图,单击更多选项 ,然后选择在 Map Viewer Classic 中打开。
- 在 Map Viewer Classic 的内容窗格中,浏览至非托管要素图层,单击更多选项 ,然后选择保存图层。
- 在创建项目窗口中,指定标题和标签字段。 单击创建项目。
- 在内容窗格中,浏览至该图层,单击更多选项 ,然后选择移除。
- 单击保存以保存该地图。
- 在左上角中,单击主页下拉列表并选择内容。
- 在内容页面的我的内容选项卡上,浏览至该要素图层,单击更多选项 ,然后选择查看项目详细信息。
- 在项目详细信息页面上,单击发布。
- 在发布窗口中,指定标题和标签字段,然后单击发布。
- 单击内容 > 我的内容。
- 浏览至该 web 地图,单击更多选项 ,然后选择在 Map Viewer Classic 中打开。
- 在 Map Viewer Classic 的顶部面板中,单击添加 > 搜索图层。
- 在我的内容窗格中,浏览至该托管要素图层,然后单击添加 以将其添加至 web 地图。
- 单击保存以保存该地图。
- 在左上角中,单击主页下拉列表并选择内容。
- 在内容页面的我的内容选项卡中,浏览至 ArcGIS Web AppBuilder 应用程序,单击更多选项 ,然后选择编辑应用程序。
- 在 ArcGIS Web AppBuilder 中,添加托管要素图层作为搜索源,然后配置搜索字段。
- 在 ArcGIS Web AppBuilder 的微件选项卡上,浏览至搜索微件并将光标悬停在该微件上,然后单击配置此微件。
- 在配置搜索窗口的搜索源设置下,将鼠标悬停在添加搜索源上,然后选择要素图层。
- 在设置图层源窗口中,选择托管要素图层。 单击确定。
- 在配置搜索窗口的搜索源设置下,单击该图层,然后单击搜索字段旁的铅笔图标。
- 在设置搜索字段窗口中,选中一个或多个字段,然后单击确定。
- 在配置搜索窗口中,单击确定。
- 在微件选项卡中,单击保存以保存配置。
选中“完全匹配”复选框以搜索并缩放至完全匹配的要素
当地图上的多个要素具有相似名称时,请选中完全匹配复选框以在地图上搜索并缩放至完全匹配的要素。
注: 按照设计,如果未选中完全匹配复选框,则按下键盘上的 Enter 键或单击搜索按钮时,地图将缩放至搜索微件的搜索结果列表中的第一个匹配结果。 这是因为将根据要素的 ObjectID 对搜索结果进行排序。
- 在 ArcGIS Web AppBuilder 的微件选项卡上,浏览至搜索微件并将光标悬停在该微件上,然后单击配置此微件。
- 在配置搜索窗口的搜索源设置下,单击可搜索图层,然后选中完全匹配复选框。
- 单击确定。
- 在微件选项卡中,单击保存以保存配置。
下图显示了在 ArcGIS Web AppBuilder 中搜索要素,然后按下键盘上的 Enter 键或单击搜索微件中的搜索按钮时,地图将缩放至完全匹配的要素。