如何在网格中转义html实体?

时间:2011-05-20 14:00:23

标签: extjs

我有网格列:

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

如何仅在此列的渲染器函数中转义html实体?

3 个答案:

答案 0 :(得分:12)

列定义的渲染器属性可以使用函数或Ext.util.Format方法之一的字符串名称。在这种情况下,您可以使用 htmlEncode 方法将列声明为:

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

答案 1 :(得分:2)

EditorGridPanel上有一个autoEncode属性。

“在编辑前后自动HTML编码和解码值(默认为false)。”

将其设置为true。

autoEncode: true

答案 2 :(得分:1)

您好在app.js文件中编写此代码 //网格xss的代码

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