2016-08-01 29 views
0

Ich erstelle dieses Fenster in einer Ext.js-Anwendung. Wie implementiere ich den Text unter dem Textbereich, der nach unten zählt, wenn der Benutzer tippt und ihn nicht zulässt, sobald die maximale Länge erreicht ist?Wie erstellt man ein Textfeld mit Zeichenzähler und maximale Länge in EXT.JS?

+0

Set 'maxLength' und' enforceMaxLength' Eigenschaften für den Text Bereich, fügen Sie ein 'label'-Feld für den Zähler hinzu, hören Sie auf das 'change'-Ereignis im Textbereich und aktualisieren Sie die Zählerbeschriftung basierend auf' getValue(). length 'im Textbereich. Mit welchem ​​Teil hast du Probleme? – serg

Antwort

1

Mit ExtJS 5/6 Sie dies das Ansichtsmodell mit tun, wie:

Ext.widget('container', { 

     viewModel: { 
      data: { 
       value: '' 
      }, 
      formulas: { 
       count: { 
        bind: '{value}', 
        get: function(value){ 
         return 140 - value.length; 
        } 
       } 
      } 
     }, 

     items: [{ 
      xtype: 'textareafield', 
      enforceMaxLength: true, 
      maxLength: 140, 
      bind: '{value}' 
     }, { 
      xtype: 'box', 
      bind: '{count}' 
     }] 
    }) 

Arbeitsbeispiel: https://fiddle.sencha.com/#fiddle/1eht

+0

Sie, Sir sind super. Vielen Dank. Es funktioniert perfekt. –