You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何在Kendo UI Textbox输入过程中强制内容转为大写?

实现Kendo UI Textbox输入时实时转换为大写

下面提供两种可靠的实现方式,确保输入过程中实时转为大写,而非输入完成后才变更:

方法1:绑定input事件并处理光标位置

通过Kendo Textbox的input事件监听输入动作,实时转换值为大写,同时恢复光标位置避免体验问题:

$("#uppercaseTextBox").kendoTextBox({
    input: function(e) {
        const inputEl = e.sender.element[0];
        // 记录当前光标位置
        const startPos = inputEl.selectionStart;
        const endPos = inputEl.selectionEnd;
        
        // 将输入值转为大写
        inputEl.value = inputEl.value.toUpperCase();
        
        // 恢复光标到原位置
        inputEl.setSelectionRange(startPos, endPos);
    }
});

方法2:CSS视觉配合事件同步实际值

如果需要先视觉上实时显示大写,同时同步实际值,可结合CSS和事件:

CSS(视觉显示大写)

.k-input {
    text-transform: uppercase;
}

JS(同步实际值为大写)

$("#uppercaseTextBox").kendoTextBox({
    input: function(e) {
        e.sender.value(e.sender.value().toUpperCase());
    }
});

关键提示

  • 仅用CSS的text-transform: uppercase只能改变视觉显示,实际提交的表单值仍是原输入的大小写,必须配合事件转换实际值。
  • 光标位置处理很重要,否则用户输入时光标会自动跳到文本末尾,影响输入体验。

内容的提问来源于stack exchange,提问作者Raptor

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.03 03:41:40