用途:本指南用于在 JavaScript 项目中实现 Syncfusion EJ2 的输入类组件,基于 npm 包 @syncfusion/ej2-inputs,覆盖 ColorPicker、MaskedTextBox、OTP Input、Range Slider 等控件的配置与事件处理。
主要能力:ColorPicker 支持 HEX/RGB/HSV 色彩模型、Picker 与 Palette 模式切换、透明度控制、内联渲染、自定义预设调色板与颜色格式转换(getValue)。MaskedTextBox 通过掩码逐字符约束输入格式,支持标准掩码元素、自定义字符、正则掩码、floatLabelType 浮动标签及前置/后置装饰模板。OTP Input 提供可配置长度、输入类型(number/text/password)、stylingMode 样式模式、分隔符与占位符,适配 2FA 与验证码场景。Range Slider 支持 Default/MinRange/Range 三种类型、刻度、Tooltip、limits 限制、横竖方向、格式化与表单验证。
使用方式:先安装 @syncfusion/ej2-inputs,并引入 ej2-base 与对应组件的主题 CSS;在页面放置容器元素后用 new 实例化组件并调用 appendTo。例如初始化颜色选择器:import { ColorPicker } from '@syncfusion/ej2-inputs'; new ColorPicker({ value: '#008000ff' }).appendTo('#color-picker');。掩码输入示例:new MaskedTextBox({ mask: '000-000-0000' }).appendTo('#mask');。OTP 示例:new OtpInput({ length: 6 }).appendTo('#otp_input');。滑块示例:new Slider({ value: 30, min: 0, max: 100, step: 1 }).appendTo('#slider');。各组件均提供 change、focus、blur、created 等事件,以及 getMaskedValue、getValue、focusIn、toggle、refresh 等方法。
适用场景:需要格式化输入(电话、邮编、日期、IP、信用卡)、一次性验证码、色彩选择、数值区间选择的表单与前端界面。
限制:部分属性组合存在模式约束(如 noColor 与 showRecentColors 仅 Palette 模式可用);使用装饰模板绑定用户输入时需做转义以防 XSS;具体版本兼容性、浏览器支持与授权价格暂未提供。