2016-04-04 8 views
0

Ich habe eine Symbolleiste eine Schaltfläche, wiezeigen ausblenden Toolbar Artikel

{ text: 'Save', tooltip: 'Save report', iconCls: 'some-cls', handler: 'somehandler' } 

folgt Ich möchte für eine Bedingung auf diese Schaltfläche verbergen.

dafür bekomme ich Toolbar-Elemente und verstecken/zeige die Elemente wie folgt.

showHideToolbarItems: function(titles) 
{ 
    tbarItems = getToolbarItems(); // Getting items successfully 
    for (var i = 0, len = tbarItems.count; i < len; i++) { 
     var item = tbarItems.itemAt(i); 
     if (titles.indexOf(item.text) > -1) 
     { 
      item.setVisible(false); 
     } 
    } 
} 

Ich rufe diese Funktion als showHideToolbarItems(['Save']);
Aber ich Fehler setVisible bekommen ist keine Funktion.

Was ich tue, ist hier falsch

+0

Hallo Microsoft DN –

+0

Was ist deine extjs Version? – aviram83

+0

Bitte geben Sie einen geeigneten Code in fidller Ich überprüfe Ihren Fehler in fiddler –

Antwort

2

Sie können für einen schnelleren Zugriff und richtige Ansatz Bezug auf Ihre Schaltfläche hinzufügen

{ 
    text: 'Save', 
    reference: 'saveBtn', 
    tooltip: 'Save report', 
    iconCls: 'some-cls', 
    handler: 'somehandler' 
} 

und in Ihrem Viewcontroller:

showHideToolbarItems: function(titles) 
{ 
    var view = this.getView(), 
     saveButton = view.lookupReference('saveBtn'); 

     saveButton.hide(); 
     //saveButton.show(); 
} 
+0

danke .. funktioniert perfekt –