<?xml version="1.0" encoding="UTF-8"?>
<rss xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns:taxo="http://purl.org/rss/1.0/modules/taxonomy/" version="2.0">
  <channel>
    <title>topic Re: TabContainer event in ArcGIS JavaScript Maps SDK Questions</title>
    <link>https://community.esri.com/t5/arcgis-javascript-maps-sdk-questions/tabcontainer-event/m-p/185748#M17263</link>
    <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;SPAN&gt;The onShow event for the tab itself is what you want. Tab container doesn't have an event to return the "active" tab and/or to let you know that a tab has been changed. It does have myTabs.selectedChildWidget, which is the selected tab (literally the widget).&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;PRE class="lia-code-sample line-numbers language-none"&gt;on(tab1, 'show', function() {
&amp;nbsp; //do stuff
});

on(tab2, 'show', function() {
&amp;nbsp; //do stuff
});

//and so on&lt;/PRE&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;Then perhaps call a function to handle the web map creation.&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;PRE class="lia-code-sample line-numbers language-none"&gt;on(tab3, 'show', function() {
&amp;nbsp; switchWebMap('WEB_MAP_ID');
});

switchWebMap function(id) {
&amp;nbsp; //do stuff
}
&lt;/PRE&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;Sorry, I don't know much about ago web maps, but hope this helps with your tabs.&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;Have you been to the dojo &lt;/SPAN&gt;&lt;A href="http://dojotoolkit.org/reference-guide/1.9/" rel="nofollow noopener noreferrer" target="_blank"&gt;Reference Guide&lt;/A&gt;&lt;SPAN&gt; and the &lt;/SPAN&gt;&lt;A href="http://dojotoolkit.org/api/" rel="nofollow noopener noreferrer" target="_blank"&gt;API Documentation&lt;/A&gt;&lt;SPAN&gt;. Most everything you need for developing with dojo.&lt;/SPAN&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
    <pubDate>Sat, 11 Dec 2021 09:24:54 GMT</pubDate>
    <dc:creator>BenFousek</dc:creator>
    <dc:date>2021-12-11T09:24:54Z</dc:date>
    <item>
      <title>TabContainer event</title>
      <link>https://community.esri.com/t5/arcgis-javascript-maps-sdk-questions/tabcontainer-event/m-p/185747#M17262</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;SPAN&gt;I am developing an application with 4 tabs on the left and a map served by ArcGIS Online(AGOL) on the right. What I want to do is when tab1 is active (focused), I want the webmap to be webmap1. When the user clicks tab2 I want the webmap to change to webmap2, and so on.&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;This is seemingly a simple task, but I cannot find enough documentation for a novice like me to understand how to make this happen. Here's a bit of code starting the initial map that works correctly:&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;var webmap = "e1cff258e4674ab1985e2303106b0cc8"; arcgisUtils.createMap(webmap,"mapDiv").then(function (response){ map = response.map; });&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;What if want is to make myvariable webmap dependent upon the active tab:&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;var webmap = (if tab1.active){"e1cff258e4674ab1985e2303106b0cc8"} (else if tab2.active){"3dea9137545e41eb8d4877ac8970294f"} etc. etc. etc....&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;Can anyone help me with this?&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;Thanks&lt;/SPAN&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Fri, 06 Dec 2013 16:13:58 GMT</pubDate>
      <guid>https://community.esri.com/t5/arcgis-javascript-maps-sdk-questions/tabcontainer-event/m-p/185747#M17262</guid>
      <dc:creator>DougKampe</dc:creator>
      <dc:date>2013-12-06T16:13:58Z</dc:date>
    </item>
    <item>
      <title>Re: TabContainer event</title>
      <link>https://community.esri.com/t5/arcgis-javascript-maps-sdk-questions/tabcontainer-event/m-p/185748#M17263</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;SPAN&gt;The onShow event for the tab itself is what you want. Tab container doesn't have an event to return the "active" tab and/or to let you know that a tab has been changed. It does have myTabs.selectedChildWidget, which is the selected tab (literally the widget).&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;PRE class="lia-code-sample line-numbers language-none"&gt;on(tab1, 'show', function() {
&amp;nbsp; //do stuff
});

on(tab2, 'show', function() {
&amp;nbsp; //do stuff
});

//and so on&lt;/PRE&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;Then perhaps call a function to handle the web map creation.&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;PRE class="lia-code-sample line-numbers language-none"&gt;on(tab3, 'show', function() {
&amp;nbsp; switchWebMap('WEB_MAP_ID');
});

switchWebMap function(id) {
&amp;nbsp; //do stuff
}
&lt;/PRE&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;Sorry, I don't know much about ago web maps, but hope this helps with your tabs.&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;Have you been to the dojo &lt;/SPAN&gt;&lt;A href="http://dojotoolkit.org/reference-guide/1.9/" rel="nofollow noopener noreferrer" target="_blank"&gt;Reference Guide&lt;/A&gt;&lt;SPAN&gt; and the &lt;/SPAN&gt;&lt;A href="http://dojotoolkit.org/api/" rel="nofollow noopener noreferrer" target="_blank"&gt;API Documentation&lt;/A&gt;&lt;SPAN&gt;. Most everything you need for developing with dojo.&lt;/SPAN&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Sat, 11 Dec 2021 09:24:54 GMT</pubDate>
      <guid>https://community.esri.com/t5/arcgis-javascript-maps-sdk-questions/tabcontainer-event/m-p/185748#M17263</guid>
      <dc:creator>BenFousek</dc:creator>
      <dc:date>2021-12-11T09:24:54Z</dc:date>
    </item>
    <item>
      <title>Re: TabContainer event</title>
      <link>https://community.esri.com/t5/arcgis-javascript-maps-sdk-questions/tabcontainer-event/m-p/185749#M17264</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;SPAN&gt;This may not be ideal but how about creating four map divs (one for each ArcGIS Online webmap) and then use CSS or the esri.show() / esri.hide() methods to manage which web map is visible? You'll have to sync the map extents, of course, but that can be done using the extent-change event.&lt;/SPAN&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Fri, 06 Dec 2013 16:43:29 GMT</pubDate>
      <guid>https://community.esri.com/t5/arcgis-javascript-maps-sdk-questions/tabcontainer-event/m-p/185749#M17264</guid>
      <dc:creator>SteveCole</dc:creator>
      <dc:date>2013-12-06T16:43:29Z</dc:date>
    </item>
    <item>
      <title>Re: TabContainer event</title>
      <link>https://community.esri.com/t5/arcgis-javascript-maps-sdk-questions/tabcontainer-event/m-p/185750#M17265</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;SPAN&gt;I found the solution, but it took a lot of research. First, thanks for all who responded. &lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;Here's the code:&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; tabContainer.watch("selectedChildWidget", function(name,oval,nval){ //tabContainer is the id of my TabContainer&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; if (nval.id == "popTab"){&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; createMap("e1cff258e4674ab1985e2303106b0cc8");&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; else if(nval.id == "ageTab"){&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; createMap("3dea9137545e41eb8d4877ac8970294f");&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; else if(nval.id =="raceTab"){&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; createMap("b3ab092a57c14fab9c8b9cc697e25eaf");&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;/SPAN&gt;&lt;A class="jive-link-external-small" href="http://forums.arcgis.com/images/icons/icon11.png" rel="nofollow" target="_blank"&gt;http://forums.arcgis.com/images/icons/icon11.png&lt;/A&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; else{createMap("374ea990475d4db0ad0397543c9539af");}&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; });&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;I discovered I didn't need to do the onshow/onclick etc. event because the watch() method already does this. This is actually in the dojo documentation, but not being a seasoned programmer makes it easy to not understand what is being shown in front of you. &lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;Now, when someone clicks on my population tab with the id of (popTab) it will fire my createMap function. The problem I was running before I successfully implemented watch() was every time I hit a tab it redrew the map even if the map was already present. &lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;Thanks again and hopefully someone will find this helpful.&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;Doug&lt;/SPAN&gt;&lt;BR /&gt;&lt;A class="jive-link-email-small" href="mailto:dkampe@howardcountymd.gov"&gt;dkampe@howardcountymd.gov&lt;/A&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Wed, 11 Dec 2013 12:21:45 GMT</pubDate>
      <guid>https://community.esri.com/t5/arcgis-javascript-maps-sdk-questions/tabcontainer-event/m-p/185750#M17265</guid>
      <dc:creator>DougKampe</dc:creator>
      <dc:date>2013-12-11T12:21:45Z</dc:date>
    </item>
    <item>
      <title>Re: TabContainer event</title>
      <link>https://community.esri.com/t5/arcgis-javascript-maps-sdk-questions/tabcontainer-event/m-p/185751#M17266</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;SPAN&gt;Doug,&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;You should click the check mark on your post to help those who are searching for an answer on this question.&lt;/SPAN&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Wed, 11 Dec 2013 15:16:56 GMT</pubDate>
      <guid>https://community.esri.com/t5/arcgis-javascript-maps-sdk-questions/tabcontainer-event/m-p/185751#M17266</guid>
      <dc:creator>KenBuja</dc:creator>
      <dc:date>2013-12-11T15:16:56Z</dc:date>
    </item>
  </channel>
</rss>

