`
men4661273
  • 浏览: 278000 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

ExtJs的TextField内容长度限制(中文全角为2个长度)

    博客分类:
  • ext
阅读更多

           extjs版本:3.3

           ext的TextField本身自带长度校验,不过是按照字符的长度进行计算,汉字或者全角符号都只计算一个长度,由于项目需要,需要按照两个长度进行计算,可以通过修改Ext的源码进行修改,在ext源码包的TextField定义的地方,找到getErrors方法,找到长度比较的位置,如下

 

		if (value.length < this.minLength) {
			errors.push(String.format(this.minLengthText, this.minLength));
		}

		if (value.length > this.maxLength) {
			errors.push(String.format(this.maxLengthText, this.maxLength));
		}

 

将其修改为:
	/**
	 * 将字符长度转换为字节长度,汉字以及全角字符占2字节
	*/
	var valueLength = 0;
        for (var i = 0; i < value.length; i++) {
            var c = value.charCodeAt(i);
            //根据单双字节进行长度计算,单字节+1
            if ((c >= 0x0001 && c <= 0x007e) || (0xff60 <= c && c <= 0xff9f)) {
                valueLength++;
            }else {
                valueLength += 2;
            }
        }
	if (valueLength < this.minLength) {
		errors.push(String.format(this.minLengthText, this.minLength));
	}

	if (valueLength > this.maxLength) {
		errors.push(String.format(this.maxLengthText, this.maxLength));
	}
 
分享到:
评论

相关推荐

    ExtJs5 去掉textfield边框

    在给定的描述中,我们看到开发者遇到了一个问题:默认情况下,ExtJs5的`textfield`组件有明显的边框,但通过添加特定的配置项和CSS样式,可以成功移除这些边框。 首先,让我们详细了解一下如何在ExtJs5中配置`...

    学习ExtJS TextField常用方法

    ExtJS 是一个基于 JavaScript 的富互联网应用程序框架,提供了许多实用的控件和方法来帮助开发者快速构建高质量的 Web 应用程序之一就是 TextField,在本文中,我们将详细介绍 ExtJS TextField 的常用方法和属性。...

    Extjs4添加tooltip

    Extjs4的textfield控件竟然没有tooltip悬浮提示,这应该算是个bug吧。网上查了很多,也没有方案。后来自己通过查询并整理出这个方案,终于实现了。 思想如下: 在textfield渲染时注册mouseover事件,然后在其中调用...

    ExtJs消息提示框

    ExtJs是一种基于JavaScript的富客户端应用框架,由Sencha公司开发。它提供了丰富的组件库,用于构建复杂的...通过理解和掌握这个组件的使用,可以提升你的ExtJs应用的交互体验,为用户提供更加人性化的信息提示服务。

    extjs 5 textfield 金额控件扩展

    2. **模板**:定义一个模板来显示货币符号,如人民币的"¥"或美元的"$",并在输入框旁边显示。 3. **转换函数**:当用户输入时,转换函数会实时更新显示的值,确保符合货币格式。例如,它可以确保小数点后的位数不...

    extjs form textfield的隐藏方法

    [{ fieldLabel: ‘代码’, name: ‘FCode’, anchor:’100%’, id: ‘fid’ },{ fieldLabel: ‘名称’, name: ‘FName’, anchor:’100%’ // anchor width by percentage },{ xtype: ‘textfield’, name: ‘FID’...

    extjs 自动为必填项增加提示后缀

    extjs 自动为必填项增加提示后缀,如题此js代码可以为必填时使用,样例功能为在必填项后增加红色星号,如: 编码*(当然此星色为红色),也可以修改成其它内容符号、文字等

    extjs中文文档大全

    2. **EXT 中文手册**:EXT中文手册详细介绍了EXT库的各种组件和API,EXT是ExtJS的核心部分,提供了大量的UI组件,如按钮、面板、菜单、表格等。开发者可以通过阅读手册了解每个组件的属性、方法和事件,便于在实际...

    extjs四个例子,一个中文API

    新手学习,初学extjs时用刚刚好,里边有三个例子,还有一个我自己写的例子(简单粗暴动态菜单),还有一个中文API

    ExtJs3.3中文API.CHM_extjs3.3中文文档_

    这个“ExtJS3.3中文API.CHM”文档是为中文用户特别准备的,帮助他们更好地理解和使用ExtJS 3.3的各种功能。 CHM文件,全称是Microsoft Compiled HTML Help,是微软推出的一种帮助文件格式,它将HTML文件打包成单一...

    extjs.form.file inputtype为“file”时无法用setValue方法赋值的解决方法

    NULL 博文链接:https://liyoro.iteye.com/blog/829896

    Extjs6示例中文版

    由于中文学习资源较少,作者决定翻译一本名为《ExtJS6 By Example》的英文书籍,并在此基础上加入自己的理解和见解,以帮助更多开发者更好地理解和掌握ExtJS6。 #### 2. 为什么选择ExtJS - **跨浏览器支持**:使用...

    ExtJs API 3.1.1 3.3.1 2.X

    ExtJs 是一个强大的JavaScript库,专门用于构建富客户端应用程序,特别是那些基于Web的桌面级应用。...对于中文使用者来说,2.X版本的中文文档无疑提供了更好的学习途径,帮助你快速理解和应用ExtJs的强大功能。

    ExtJs2相关书籍

    在您提供的资料中,我们可以看到针对ExtJS2的学习资源,包括一本实用简明教程和一本中文手册,以及一个关于EXTJS部分功能的UML类结构图。 《Ext实用简明教程》可能是对ExtJS2的基础知识和常见用法的全面介绍,涵盖...

    extjs中文api

    对于中文用户而言,《ExtJS中文API》是一个非常有用的资源,它详细介绍了ExtJS的所有组件、方法、属性等,并配有相应的示例代码,有助于更好地理解和运用这些功能。 根据提供的链接`...

    EXTJS3.0中文API (离线)

    总的来说,EXTJS 3.0中文API为开发者提供了一个详细的指南,无论是在项目初始化阶段还是在解决具体问题时,都能从中获得必要的帮助。对于EXTJS的初学者和有经验的开发者来说,这都是一份非常宝贵的资源。

    ExtJs 实例+ExtJs中文教程(学习extjs必备)

    《ExtJs中文教程》则提供了一条清晰的学习路径,让你逐步了解并精通ExtJs。教程可能包括了基础概念、组件库的详细介绍、数据管理、事件处理、布局管理等方面的内容。中文教程的优势在于,对于中文使用者来说,语言...

Global site tag (gtag.js) - Google Analytics