`
jysh0922
  • 浏览: 68917 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论
阅读更多

在验证javascript表单数据时,用length属性所验证,一个汉字长度为1。但提交到数据库中(oracle),一个汉字占两个字节,长度为2,这样就造成验证误差。
比如数据库表定义一个字段长度为5,用length来限制录入的长度,如果录入的为汉字,这样可以通过验证,但插入数据库肯定会出错。
为了解决这中情况,可以定义一个新的函数getBytes()取得字符串的字节数(实际上这个函数是java的标准函数)。
定义如下:

js 代码
  1. <script language=javascript>    
  2.   
  3. String.prototype.getBytes = function() {   
  4.     var cArr = this.match(/[^\x00-\xff]/ig);   
  5.     return this.length + (cArr == null ? 0 : cArr.length);   
  6. }    
  7.   
  8. var len=frm.elements["CSMArea/mscID"].value.getBytes();   
  9.  if(len>5){   
  10.   alert("交换机标识长度超过限制");   
  11.   frm.elements["CSMArea/mscID"].select();   
  12.   return false;   
  13.  }    
  14.   
  15. </script>    

getBytes用正则表达式来判断字符串中包含汉字的个数,包含的汉字都放到数组cArr中,这样cArr的长度就是汉字的总数。getBytes方法返回length加上汉字数,就是总的字节数。

分享到:
评论

相关推荐

    javascript 判断中文字符长度的函数代码

    JS的字符串都是string对象,可以用string对象的length属性可以获取其长度,但是无论是中文、全角符号以及英文最小长度单位都是1,这与php的strlen()并不相同。 代码如下: function strlen(str) { var s = 0; for(var...

    JavaScript 中关于字符串字节长度的计算比较(含汉字字符串)

    JavaScript 中关于字符串字节长度的计算比较(含汉字字符串) 可用于验证字符串长度。效率比较高。

    JavaScript中英文字符长度统计方法示例【按照中文占2个字符】

    主要介绍了JavaScript中英文字符长度统计方法,涉及javascript针对中英文字符的匹配与运算相关操作技巧,需要的朋友可以参考下

    编写可维护的JavaScript(中文)

    《编写可维护的JavaScript》向开发人员阐述了如何在团队开发中编写具备高可维护性的JavaScript代码,书中详细说明了作为团队一分子,应该怎么写JavaScript。本书内容涵盖了编码风格、编程技巧、自动化、测试等几方面...

    C#和Javascript两种语法判断混合字符长度

    C#和Javascript两种语法判断混合字符长度,有利于Web程序开发避免存储字符串的错误

    javaScript判定提交内容是否超过数据库长度

    有这么一种情况,就是中文字符占两个字符长度或者更多,而javascript的length属性是按一位计算的,需要自己写函数,下面这个函数就把汉字按两个字符长度计算。

    JavaScript权威指南(第6版)中文版pdf+源代码

     7.4 数组长度148  7.5 数组元素的添加和删除149  7.6 数组遍历149  7.7 多维数组151  7.8 数组方法152  7.9 ECMAScript 5中的数组方法 156  7.10 数组类型160  7.11 类数组对象161  7.12 作为数组的字符串...

    javascript中使用正则计算中文长度的例子

    主要介绍了javascript中使用正则计算中文长度的例子,需要的朋友可以参考下

    JavaScript权威指南(第6版)中文文字版

    7.4 数组长度 148 7.5 数组元素的添加和删除 149 7.6 数组遍历 149 7.7 多维数组 151 7.8 数组方法 152 7.9 ecmascript 5中的数组方法 156 7.10 数组类型 160 7.11 类数组对象 161 7.12 作为数组的字符串 163 第8章 ...

    JavaScript权威指南(第6版)(中文版)

    《JavaScript权威指南(第6版)》主要讲述的内容涵盖JavaScript语言本身,以及Web浏览器所实现的JavaScript API。本书第6版涵盖了HTML5和ECMAScript 5,很多章节完全重写,增加了当今Web开发的最佳实践的内容,新增...

    程序天下:JavaScript实例自学手册

    3.11 判断字符串中有多少汉字 3.12 去除字符串的前后空格 3.13 刷新时清空所有文本框 3.14 随意改变大小的文本框 3.15 文本框的自动全选 3.16 文本框滚动导航 3.17 按钮获取焦点 3.18 文本框获取焦点弹出下拉框 3.19...

    javascript常用判断

    js验证表单大全,用JS控制表单提交 ,javascript提交表单 目录: 1:js 字符串长度限制、判断字符长度 、js限制输入、限制不能输入、textarea 长度限制 2.:js判断汉字、判断是否汉字 、只能输入汉字 3:js判断是否输入...

    在javascript中如何得到中英文混合字符串的长度

    有同事在公司的OA上发了个贴子,介绍在javascript中如何得到中英文混合字符串的长度。 用的是正则表达式。 代码如下: var str = ”坦克是tank的音译”; var len = str.match(/[^ -~]/g) == null ? str.length : str....

    JavaScript获取中英文混合字符串长度的方法示例

    主要介绍了JavaScript获取中英文混合字符串长度的方法,结合实例形式分析了javascript通过遍历转换字符串实现统计字符串长度的操作技巧,需要的朋友可以参考下

    《程序天下:JavaScript实例自学手册》光盘源码

    3.11 判断字符串中有多少汉字 3.12 去除字符串的前后空格 3.13 刷新时清空所有文本框 3.14 随意改变大小的文本框 3.15 文本框的自动全选 3.16 文本框滚动导航 3.17 按钮获取焦点 3.18 文本框获取焦点弹出下拉框 3.19...

    javascript表单验证大全

    javascript表单验证大全 js表单验证控制代码大全 1:js 字符串长度限制、判断字符长度 、js限制输入、限制不能输入、textarea 长度限制 2.:js判断汉字、判断是否汉字 、只能输入汉字 3:js判断是否输入英文、只能...

    JavaScript权威指南(第6版) 中文版

    《JavaScript权威指南(第6版)》要讲述的内容涵盖JavaScript语言本身,以及web浏览器所实现的JavaScript API。本书第6版涵盖了 html5 和 ecmascript 5,很多章节完全重写,增加了当今 web 开发的最佳实践的内容,新增...

    JavaScript实现的GBK、UTF8字符串实际长度计算函数

    主要是为了匹配数据库的长度范围内,比如GBK的数据库某字段是varchar(10),那么就相当于5个汉字长度,一个汉字等于两个字母长度。如果是UTF8的数据库则是每个汉字长度为3。 知道了以上原理以后,我们就可以算出一个...

Global site tag (gtag.js) - Google Analytics