Combine legend and layer visibility into one widget

06-23-2020 06:22 PM
Status: Open
New Contributor III

Hi there,

Request/suggestion/plea to allowed combined functionality of these 2 widgets across all ESRI products (WAB, ExB, Dashboards etc). Please see an example of suggested legend/layer functionality here, It's not polished but gives you the basic idea...

Combining functionality would increase screen real estate and improve UX.

Using 2 widgets, separately, we've found is confusing for the user.

If anyone has a workaround I would love/appreciate/be ever grateful if you could share.

Many thanks,



Thanks for the example Alannah C‌. I like it, though it would be good to see in the legend/layers list what is turned off. Otherwise its a great idea to simplify. Don't forget the mobile apps!


My current workaround is  Lee Penny's Interactive Legend Idea.
Hopefully this functionality will be available in Experience Builder too (as outlined by THAYNES.BC here Filter widget functionality in Experience Builder to match WAB).


Good idea and I agree. I'd like to see the legend integrated into the JS API 4.x in the API LayerList widget officially. 


The WebApp Builder Layer List does have a good legend built in. It can be the example to follow. However, the user has to know to click the layers to see it. But, not a problem. I use jQuery to 'click' and expand some of the items with one or two legend symbols. Works great. (though watch the node IDs, they change when you readd services to the webmap) I keep the ones with a dozen or more minimized. With a tooltip advising to expand them to see the legend. So the way it works in WebApp Builder is fairly good, and I'd like to see it integrated into the 4.x API like how it is currently in WebApp Builder.   Suggestion, when adding to 4.x JS API:   It should be as easy to configure as Legend: "true" and then per each subLayer Expand: "true" for each, to determine if they are expanded. With an optional "ExpandedAll: "true" property to expand them all. 


This would be incredibly useful - it's not particularly user friendly to have separate layer and legend widgets. I want to be able to turn a layer on and off at the same time as seeing its symbology. I know you can have both the layer and legend widgets expanded out by default, but this only works well when you have only a couple of layers. It doesn't look great when you have lots of layers to display.


A couple of years late to the party on this suggestion but believe it would incredibly useful. As previously mentioned, having two widgets for the legend and layer list is very confusing to users and makes the whole process of viewing layers much more clunky especially when you've got a large number. Being able to see the symbology and turn the layer on and off should be available within the same widget!!


This feature has been provided by Experience Builder Map Layers widget in the 2023 AGOL June release. Thank you.