当前位置: 首页 > 图文教程 > 网络编程 > Javascript > jQuery textarea的长度进行验证

Javascript
JavaScript 拖拽实现(附注释),最经典简单短小精悍!
学习drag and drop js实现代码经典之作
jquery创建div 实现代码
jquery遍历input取得input的name
jQuery 对象中的类数组操作
js 发个判断字符串是否为符合标准的函数
细品javascript 寻址,闭包,对象模型和相关问题
在IE上直接编辑网页内容的js代码(IE地址栏js)
一个选择最快的服务器转向代码
JQUERY 对象与DOM对象之转换
javascript 对象比较实现代码
jquery 获取json数据实现代码
Firefox div高度自适应
xml和web特殊字符
js 表单验证方法(实用)
ie和firefox不兼容的解决方法集合
js 数组操作代码集锦
js checkbox(复选框) 使用集锦
JS 判断代码全收集
理解JavaScript的caller,callee,call,apply

Javascript 中的 jQuery textarea的长度进行验证


出处:互联网   整理: 软晨网(RuanChen.com)   发布: 2009-09-12   浏览: 206 ::
收藏到网摘: n/a

Textarea 控件不能使用form validate.js 进行判断. 扩展textarea 属性,结合jquery.validate.js,在提交表单同时,加上对textarea的长度进行验证。
1.jQuery 对textarea 长度进行验证的插件
复制代码 代码如下:

//对textarea 长度进行验证
jQuery.fn.checkLength = function(parameters) {
defaults = {
min: 0
, max: 5
}
jQuery.extend(defaults, parameters);
// 当前textarea 的值
var taValue = $(this).val();
var len = taValue.length;
if (len >= defaults.max) {
$(this).parent().append(showLengthError("max")).show();
window.setTimeout(function() {
$(".lenError").hide();
}, 5000);
return false;
} else if (len <= defaults.min) {
$(this).parent().append(showLengthError("min"));
window.setTimeout(function() {
$(".lenError").hide();
}, 5000);
return false;
} else {
return true;
}
//todo: 当键盘输入在正确范围的时候,消除提示
}

注释:
1) 参数传递:
defaults = {
min: 0
, max: 5
}
分别用于用于接收textarea的最短和最大长度。
2) 返回值
true : 验证长度通过
false : 验证长度失败
2. 使用说明:
在页面添加js引用:
<script type="text/javascript" src="../../../scripts/jquery/jquery.textarea.js"></script>
示例:
在页面中
<textarea id="txtContent" rows="4" cols="40"></textarea>
<button id="chklen">Check Textarea Length</button>
当触发按钮事件的时候,我们就可以对textarea 的长度进行判断了。
复制代码 代码如下:

$("#chklen").click(function(){
var bool = $("#txtContent").checkLength({
min : -1
,max: 10
});
if(bool){
alert(bool);
}
});

如果textarea是在form表单当中的,则在表单提交的同时,进行验证,条件满足的时候再进行提交。
如下示例:
复制代码 代码如下:

// 判断 testarea 长度是否超出限制
var ckContent = $("#txtContentIntro").checkLength({
min : -1 //不判断是否为空
,max: 512 //最大长度512
});
// 表单验证
var b = $("#fcourseware").valid();
// 执行上传操作,上传成功后保存课件信息
if (b && ckContent ) {
// todo: submit form
}

min和max两个参数均可以不传递值,默认最小长度0,最大长度10.如果textarea不为必填项,则min 值赋予 -1.
最后通过返回bool值进行操作。