找回密码
 立即注册

QQ登录

只需一步,快速开始

Fiooona
论坛元老   /  发表于:2020-1-21 14:14  /   查看:2930  /  回复:0
本帖最后由 Fiooona 于 2020-1-21 14:48 编辑

背景: 需要让某一个单元格仅能输入数字,无法输入字符串。
思路:创建一个input框、监听input框的change事件、如果输入了数字0-9以外的内容用正则替换成空
核心代码:
  1.    NumberCellType.prototype.activateEditor = function (editorContext, cellStyle, cellRect) {
  2.         var self = this;
  3.         //Initialize input editor.
  4.         if (editorContext) {
  5.             $editor = $(editorContext);
  6.             GC.Spread.Sheets.CellTypes.Base.prototype.activateEditor.apply(this, arguments);
  7.             $editor.css("position", "absolute");
  8.             $editor.on('input change',function(e){ //对输入的值进行搜索
  9.                 var value = $editor.val();
  10.                 $editor.val(value.replace(/[^0-9.]/g,''))
  11.             });
  12.         }
  13.     }
复制代码
完整示例点击附件下载
更多自定义单元格实现:SpreadJS自定义单元格示例集合

NumberCellType.html

6.32 KB, 下载次数: 70

组件化表格编辑器(预览版)试用进行中,点击了解详情!
请点击评分,对我的服务做出评价!5分为非常满意!

0 个回复

您需要登录后才可以回帖 登录 | 立即注册
返回顶部