这篇文章主要介绍了js判断输入字符串长度,汉字算两个字符,字母数字算一个,感兴趣的小伙伴们可以参考一下
js判断输入字符串长度(汉字算两个字符,字母数字算一个)
文本输入时,由于数据库表字段长度限制会导致提交失败,因此想到了此方法验证。
废话不多说上代码:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
|
<
html
>
<
head
>
<
title
>js判断输入字符串长度(汉字算两个字符,字母数字算一个)</
title
>
<
style
type
=
"text/css"
>
.pbt {
margin-bottom: 10px;
}
.ie6 .pbt .ftid a, .ie7 .pbt .ftid a {
margin-top: 1px;
}
.cl:after {
clear: both;
content: ".";
display: block;
height: 0;
visibility: hidden;
}
</
style
>
<
script
type
=
"text/javascript"
>
//获取字符串长度(汉字算两个字符,字母数字算一个)
function getByteLen(val) {
var len = 0;
for (var i = 0; i <
val.length
; i++) {
var
a
=
val
.charAt(i);
if (a.match(/[^\x00-\xff]/ig) != null) {
len += 2;
}
else {
len += 1;
}
}
return len;
}
// 只要键盘一抬起就验证编辑框中的文字长度,最大字符长度可以根据需要设定
function checkLength(obj) {
var
maxChars
=
80
;//最多字符数
var
curr
=
maxChars
- getByteLen(obj.value);
if (curr > 0) {
document.getElementById("checklen").innerHTML = curr.toString();
} else {
document.getElementById("checklen").innerHTML = '0';
document.getElementById("subject").readOnly = true;
}
}
</
script
>
</
head
>
<
body
>
<
div
class
=
"pbt cl"
>
<
textarea
id
=
"subject"
maxlength
=
"80"
onkeyup
=
"checkLength(this)"
accesskey
=
"1"
tabindex
=
"11"
></
textarea
>
<
span
id
=
"subjectchk"
>还可输入
<
strong
id
=
"checklen"
style
=
"color: #FF0000"
>80</
strong
>
个字符
</
span
>
<
span
id
=
"postNameRule"
class
=
"spn_flag_1"
style
=
"display: none"
></
span
>
</
div
>
</
body
>
</
html
>
|
以上就是js判断输入字符串长度的方法,希望对大家的学习有所帮助,学会如何判断输入字符串长度。