jQuery 限制输入字符串长度


Posted in Javascript onJune 20, 2016

我们后台做程序的时候,比如录入一篇文章,文章会有摘要,我们希望文章的字符长度是我们可以控制的,我们不希望它太长,比如限制只能输入250个字符,下面的代码实现了这种功能。

先来看一下效果图

jQuery 限制输入字符串长度

代码如下:

<!DOCTYPE HTML>
<html>
<head>
<meta charset="utf-8">
<title>无标题文档</title>
<script type="text/javascript" src="http://apps.bdimg.com/libs/jquery/1.4.2/jquery.min.js"></script>
<script type="text/javascript">
(function ($) {
 // tipWrap: 提示消息的容器
 // maxNumber: 最大输入字符
 $.fn.artTxtCount = function (tipWrap, maxNumber) {
  var countClass = 'js_txtCount',
   // 定义内部容器的CSS类名
   fullClass = 'js_txtFull',
   // 定义超出字符的CSS类名
   disabledClass = 'disabled'; // 定义不可用提交按钮CSS类名
  // 统计字数
  var count = function () {
    var btn = $(this).closest('form').find(':submit'),
     val = $(this).val().length,
     // 是否禁用提交按钮
     disabled = {
      on: function () {
       btn.removeAttr('disabled').removeClass(disabledClass);
      },
      off: function () {
       btn.attr('disabled', 'disabled').addClass(disabledClass);
      }
     };
    if (val == 0) disabled.off();
    if (val <= maxNumber) {
     if (val > 0) disabled.on();
     tipWrap.html('<span class="' + countClass + '">\u8FD8\u80FD\u8F93\u5165 <strong>' + (maxNumber - val) + '</strong> \u4E2A\u5B57</span>');
    } else {
     disabled.off();
     tipWrap.html('<span class="' + countClass + ' ' + fullClass + '">\u5DF2\u7ECF\u8D85\u51FA <strong>' + (val - maxNumber) + '</strong> \u4E2A\u5B57</span>');
    };
   };
  $(this).bind('keyup change', count);
  return this;
 };
})(jQuery);
 
// demo
jQuery(function(){
// 批量
$('.autoTxtCount').each(function(){
$(this).find('.text').artTxtCount($(this).find('.tips'), 140);
});
// 单个
$('#test').artTxtCount($('#test_tips'), 10);
});
</script>
<style>
/* demo */
body {
 font-size:75%;
 font-family:'微软雅黑';
}
#demo {
 width:500px;
}
#demo .help, #demo .help a {
 color:#999;
}
#demo form {
 margin:20px 0;
 padding:8px;
 background:#F4F4F4;
 border:1px solid #EDEDED;
}
#demo .tips {
 color:#999;
 padding:0 5px;
}
#demo .tips strong {
 color:#1E9300;
}
#demo .tips .js_txtFull strong {
 color:#F00;
}
#demo textarea.text {
 width:474px;
}
</style>
</head>
<body>
<div id="demo">
 <h1>artTxtCount - 轻量级输入字数提示插件</h1>
 <p class="help">$('#text').artTxtCount($('#text_tips'), 10);</p>
 <p class="help">by tangbin. </p>
 <form class="autoTxtCount" action="" method="get">
 <div>
  <textarea class="text" name="" cols="50" rows="3"></textarea>
 </div>
 <div>
  <button type="submit">提交</button>
  <span class="tips"></span> </div>
 </form>
 <form class="autoTxtCount" action="" method="get">
 <div>
  <textarea class="text" name="" cols="50" rows="3"></textarea>
 </div>
 <div>
  <button type="submit">提交</button>
  <span class="tips"></span> </div>
 </form>
 jQuery文本框实时显示可输入字数并可禁止输入提示超出,强!
 <form action="" method="get">
 <input class="text" id="test" name="" type="text" />
 <span id="test_tips" class="tips"></span><br />
 <button type="submit">提交</button>
 </form>
</div>
</body>
</html>

以上就是本文的全部内容,希望能给大家一个参考,也希望大家多多支持三水点靠木。

Javascript 相关文章推荐
javascript:文字不间断向左移动的实例代码
Aug 08 Javascript
js时间戳转为日期格式的方法
Dec 28 Javascript
js表单处理中单选、多选、选择框值的获取及表单的序列化
Mar 08 Javascript
动态的9*9乘法表效果的实现代码
May 16 Javascript
在Mac OS上安装使用Node.js的项目自动化构建工具Gulp
Jun 18 Javascript
jQuery实现导航滚动到指定内容效果完整实例【附demo源码下载】
Sep 20 Javascript
js当前页面登录注册框,固定div,底层阴影的实例代码
Oct 04 Javascript
JS实现复制内容到剪贴板功能
Feb 05 Javascript
js判断手机系统是android还是ios
Mar 07 Javascript
JavaScript设计模式之工厂模式简单实例教程
Jul 03 Javascript
详解如何在vscode里面调试js和node.js的方法步骤
Dec 24 Javascript
bootstrap实现tab选项卡切换
Aug 09 Javascript
JavaScript函数节流概念与用法实例详解
Jun 20 #Javascript
Angular的Bootstrap(引导)和Compiler(编译)机制
Jun 20 #Javascript
jquery通过name属性取值的简单实现方法
Jun 20 #Javascript
jQuery模拟select实现下拉菜单功能
Jun 20 #Javascript
对jQuary选择器的全面总结
Jun 20 #Javascript
jQuery实现的可编辑表格完整实例
Jun 20 #Javascript
jQuery文件上传控件 Uploadify 详解
Jun 20 #Javascript
You might like
日本十大科幻动漫 宇宙骑士垫底,第一已成经典
2020/03/04 日漫
PHP中函数内引用全局变量的方法
2008/10/20 PHP
PHP连接access数据库
2015/03/27 PHP
PHP Hash算法:Times33算法代码实例
2015/05/13 PHP
php 输出缓冲 Output Control用法实例详解
2020/03/03 PHP
jQuery实现的输入框选择时间插件用法实例
2015/02/28 Javascript
js实现简单的左右两边固定广告效果实例
2015/04/10 Javascript
jQuery拖动元素并对元素进行重新排序
2015/12/30 Javascript
jquery常用的12个小功能
2016/07/22 Javascript
浅谈js中子页面父页面方法 变量相互调用
2016/08/04 Javascript
浅谈JavaScript 中有关时间对象的方法
2016/08/15 Javascript
JavaScript学习笔记整理_简单实现枚举类型,扑克牌应用
2016/09/19 Javascript
微信小程序中换行空格(多个空格)写法详解
2018/07/10 Javascript
webpack+vue-cil 中proxyTable配置接口地址代理操作
2020/07/18 Javascript
Python实现PS滤镜的万花筒效果示例
2018/01/23 Python
Php多进程实现代码
2018/05/07 Python
python实现桌面壁纸切换功能
2019/01/21 Python
opencv3/C++实现视频读取、视频写入
2019/12/11 Python
pytorch中tensor.expand()和tensor.expand_as()函数详解
2019/12/27 Python
Python字典深浅拷贝与循环方式方法详解
2020/02/09 Python
Python搭建Keras CNN模型破解网站验证码的实现
2020/04/07 Python
用opencv给图片换背景色的示例代码
2020/07/08 Python
python 检测图片是否有马赛克
2020/12/01 Python
20行代码教你用python给证件照换底色的方法示例
2021/02/05 Python
html5 canvas合成海报所遇问题及解决方案总结
2017/08/03 HTML / CSS
英国人最爱的饰品网站:Accessorize
2016/08/22 全球购物
Ray-Ban雷朋西班牙官网:全球领先的太阳眼镜品牌
2018/11/28 全球购物
5个HTML5的常用本地存储方式详解与介绍
2021/03/27 HTML / CSS
少年闰土教学反思
2014/02/22 职场文书
市场营销工作计划书
2014/05/06 职场文书
节约用电通知
2015/04/25 职场文书
员工手册编写范本
2015/05/14 职场文书
关于做家务的心得体会
2016/01/23 职场文书
Java实现多线程聊天室
2021/06/26 Java/Android
使用Python开发冰球小游戏
2022/04/30 Python
Golang 入门 之url 包
2022/05/04 Golang