2011-05-20 13 views
10

tengo columna de cuadrícula:cómo escapar entidades html en la cuadrícula?

{ 
    header: "", 
    sortable: false, 
    id: 'value', 
    dataIndex: 'value', 
    hidden: false, 
    editor: { 
     xtype: 'textfield', 
     allowBlank: false 
    } 
} 

cómo escapar de entidades html sólo en función de render para esta columna?

Respuesta

2

Hay una propiedad autoEncode en EditorGridPanel.

"Fiel a los valores de codificación y decodificación de HTML automáticamente antes y después de la edición (por defecto es falso)."

Simplemente configúralo como verdadero.

autoEncode: true 
12

El procesador propiedad de una definición de columna puede tener ya sea una función o el nombre de la cadena de uno de los métodos de Ext.util.Format. En este caso se puede utilizar el método deHtmlEncode declarando la columna como:

{ 
    header: "", 
    sortable: false, 
    id: 'value', 
    dataIndex: 'value', 
    hidden: false, 
    editor: { 
     xtype: 'textfield', 
     allowBlank: false 
    }, 
    renderer: 'htmlEncode' 
} 
+2

tuve que usar 'renderer: Ext.util.Format.htmlFormat' (en lugar de una cadena; en Ext3). –

+0

No se pudo encontrar ninguna propiedad mencionada. ¿Pueden ayudarme a identificar dónde debo aplicar este 'htmlEncode'? –

+0

Gracias, hombre, esto me ahorró mucho tiempo. – quintin

1

hi escribir este código en app.js archivo // código para rejilla XSS

Ext.override(Ext.grid.column.Column, { 
defaultRenderer: Ext.util.Format.htmlEncode 
}); 
Cuestiones relacionadas