使用在线表格编辑器的时候,“查找”对话框经常会被用到。在点击“查找全部”按钮后,对话框中会列出所有的查找结果列表,如下图
有些用户希望能够动态获取列表中的查找结果数据,我们可以通过重写按钮的click事件。来获取原有的click方法中处理后得到的查找结果
按钮的定义位于“查找对话框”的template中,我们需要修改并重新进行注册
下面是具体的代码,oldfunc为获取到的“查找全部”按钮本身的逻辑,在执行完成后,就可以通过e.findAllResult得到查找结果
- var fdlg=GC.Spread.Sheets.Designer.getTemplate(GC.Spread.Sheets.Designer.TemplateNames.FindDialogTemplate);
- var oldfunc=fdlg.buttons[2].click;
- fdlg.buttons[2].click=function (e) {
- oldfunc(e);
- console.log("在查找全部");
- console.log(e.findAllResult);
- }
- GC.Spread.Sheets.Designer.registerTemplate(GC.Spread.Sheets.Designer.TemplateNames.FindDialogTemplate,fdlg);
- designer.setConfig(GC.Spread.Sheets.Designer.DefaultConfig);
复制代码
最终输出的结果如下
|
|