我有一个网格的extjs6分页工具栏的安全问题。我可以在分页工具栏的编号字段中注入xss脚本。
下面是与分页网格相关的小提琴。grid Fiddle link
尝试将此代码粘贴到分页工具栏输入字段中,以复制该问题:<img src=-x onerror="alert (0)";/>
我希望停止这个xss注入。任何帮助都是非常感谢的。
发布于 2017-05-16 04:00:33
解决这个问题的一种方法是将分页条的数字字段输入类型更改为number。你可以在afterrender中访问numberfield dom。
dockedItems: [{
xtype: 'pagingtoolbar',
store: 'simpsonsStore', // same store GridPanel is using
dock: 'bottom',
displayInfo: true,
listeners:{
afterrender:function(pg){
pg.child('[xtype=numberfield]').getEl().dom.getElementsByTagName("input")[0].type='number';
}
}
}]发布于 2017-05-15 21:02:10
一种选择是:分页工具栏由一个数字字段组成。
http://docs.sencha.com/extjs/6.0.1/classic/src/Paging.js.html
在此字段中添加侦听器,并在处理之前检查输入。
发布于 2017-05-15 21:21:11
您可以使用正则表达式来掩蔽字母表,因为数字字段将只包含number only.Check this。
https://stackoverflow.com/questions/43973690
复制相似问题