发布于 2016-12-31 23:54:32 | 200 次阅读 | 评论: 0 | 来源: 网友投递

这里有新鲜出炉的Javascript教程,程序狗速度看过来!

JavaScript客户端脚本语言

Javascript 是一种由Netscape的LiveScript发展而来的原型化继承的基于对象的动态类型的区分大小写的客户端脚本语言,主要目的是为了解决服务器端语言,比如Perl,遗留的速度问题,为客户提供更流畅的浏览效果。


text通常我们可以直接用maxlength属性来控制输入的字符会长度
但是textarea没有这个属性。

asp.net的服务端textbox这个属性也不起效,所以我们只有用js脚本来控制
好,废话不多说,先上代码

javascipt源码:

 
function textCounter(field, maxlimit, lines) {//参数说明:field是textarea对象,maxlimit是最大允许长度,lines是行数 
var arr = field.value.split("\n");//首先我们要为验证行数,通过分行符“\n” 
var perLine = ""; 
var value = ""; 
if (arr.length < lines) lines = arr.length;//判断行数是否超出了我们规定的行数,如果超了就把行数改为超出的,因为我们要算字符串长度 
for (loop = 0; loop < lines; loop++) {//循环测数字符串总长度,不多说了 
perLine = arr[loop]; 
if (perLine.length > maxlimit) 
perLine = perLine.substring(0, maxlimit); 
value = value + perLine; 
if (loop != lines - 1) 
value = value + "\n"; 
} 
if (field.value != value) 
field.value = value; 
if (checkstr(value, maxlimit)) {//判断字符串长度是不是超标 
field.value = value.substring(0, maxlimit);//删除超除的多余字符串 
} 
} 

function showOverWords(obj, maxlength) {//显示剩余的可输入字符数obj为txteara对象,maxlength最大长度 
len = obj.value.length; 
$("#wordCount").html(maxlength - len); //这句是jquery的,可以自己相对自己改改。 表示修改id为wordCount标签的值 
} 

function checkstr(str, digit) {//判断中文和英文,字符串的长度是否超标 
var n = 0; 
for (i = 0; i < str.length; i++) { 
var leg = str.charCodeAt(i);//ASCII码 
if (leg > 255) {//大于255的都是中文 
n += 2;//如果是中文就是2个字节 
} else { 
n += 1;//英文,不多说了 
} 
} 
if (n > digit) { 
return true; 
} else { 
return false; 
} 
} 


ok上面有三个函数,我们通过调用这三个函数就可以实现我们所想要的功能

最新网友评论  共有(0)条评论 发布评论 返回顶部

Copyright © 2007-2017 PHPERZ.COM All Rights Reserved   冀ICP备14009818号  版权声明  广告服务