Hello!
I need to remove all the tabs contained in the AttributeTable widget, before giving a publish of a new graphic layer added to the map. Is there any way to do this? I am using JavaScript API.
Note: I want to remove all AttributeTable tabs from within the geoprocessing widget.
Thank you!
Gilberto.
Gilberto,
I don't use the GP widget but here is some code fro closing all the tabs on the AT widget:
define([
...
  'jimu/WidgetManager',
...
function (
...
  WidgetManager,
...
) {
this.wManager = WidgetManager.getInstance();
...
//code snippet to add to some function that you want to have close the tabs
        if (this.wManager) {
          var widgetCfg = this._getWidgetConfig('AttributeTable');
          if(widgetCfg){
            var attWidget = this.wManager.getWidgetByLabel(widgetCfg.label);
            if(attWidget){
              for(var t = attWidget.layerTabPages.length - 1; t >= 0; t--){
                attWidget.layerTabPageClose(attWidget.layerTabPages[t].paneId, true);
              }
            }
          }
        }
//end of code snippet
//support function
      _getWidgetConfig: function(widgetName){
        var widgetCnfg = null;
        array.some(this.wManager.appConfig.widgetPool.widgets, function(aWidget) {
          if(aWidget.name == widgetName) {
            widgetCnfg = aWidget;
            return true;
          }
          return false;
        });
        if(!widgetCnfg){
          /*Check OnScreen widgets if not found in widgetPool*/
          array.some(this.wManager.appConfig.widgetOnScreen.widgets, function(aWidget) {
            if(aWidget.name == widgetName) {
              widgetCnfg = aWidget;
              return true;
            }
            return false;
          });
        }
        return widgetCnfg;
      },
					
				
			
			
				
			
			
				
			
			
			
			
			
			
		Perfect Robert. Run fine as I need Thank you very much.
Don't forget to mark this question as answered by clicking on the "Correct Answer" link on the reply that answered your question.