2016-12-12 3 views
0

Ich habe einen Bericht und muss die Spalten anders ausrichten. Ich muss die Zeilen, in denen Sie Werte haben, mit Zahlen nach rechts ausrichten und die Zeilen mit dem Text nach links ausrichten.extjs zwei Arten der Ausrichtung in der gleichen Spalte

Gibt es eine Konfiguration/Funktion für ein solches Problem, oder sollte ich CSS verwenden?

Fiddle with the grid

+0

meine Antwort aktualisiert, ich habe einfach nicht Ihre ext Version –

Antwort

2

können Sie tun, was Sie auf Spalte Renderer möchten, wie das die Eigenschaft align ändern und tun, um die calcs Sie brauchen:

renderer:function(val,cell){ 
     if(parseInt(val)) 
      cell.align='right'; 
     return val; 
    } 

Parse int wird funktionieren, wenn Ihr Text nur gemacht Worte ohne Nummer, überprüfen Sie können in Ihrem Fall, wenn eine Zeichenfolge mit einem regulären Ausdruck wie dies nur Zahlen haben:

renderer:function(val,cell){ 
      if(val.match(/^[0-9]+$/)) 
       cell.align='right'; 
      else 
       cell.align='left'; 
      return val; 
     } 

Working fiddle here

Schauen Sie sich den Phone Column Renderer an.

[UPDATE]

Leider nicht Ihre Ext Version lesen, in Ihrem Fall können Sie meine Funktion wie folgt verwendet werden:

I aktualisiert auch den Fall mit Punkten in der Zahl.

renderer:function(val,cell){ 
        if(val.match(/^[0-9]*\.?[0-9]*$/)) 
         cell.style='text-align:right;'; 
        else 
         cell.style='text-align:left;'; 
        return val; 
       } 

Example with your fiddle

+0

lesen Es funktionierte. Vielen Dank! –

Verwandte Themen