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 相关文章推荐
dojo学习第一天 Tab选项卡 实现
Aug 28 Javascript
web前端设计师们常用的jQuery特效插件汇总
Dec 07 Javascript
基于jquery实现左右按钮点击的图片切换效果
Jan 27 Javascript
基于javascript实现根据身份证号码识别性别和年龄
Jan 22 Javascript
jquery实现列表上下移动功能
Feb 25 Javascript
ionic实现滑动的三种方式
Aug 27 Javascript
Ionic3 UI组件之Gallery Modal详解
Jun 07 Javascript
Angular4实现图片上传预览路径不安全的问题解决
Dec 25 Javascript
Es6 Generator函数详细解析
Feb 24 Javascript
如何在vue中使用ts的示例代码
Feb 28 Javascript
vue中使用gojs/jointjs的示例代码
Aug 24 Javascript
vue+axios 前端实现登录拦截的两种方式(路由拦截、http拦截)
Oct 24 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
用PHP和ACCESS写聊天室(九)
2006/10/09 PHP
php编写的简单页面跳转功能实现代码
2013/11/27 PHP
php url路由入门实例
2014/04/23 PHP
laravel + vue实现的数据统计绘图(今天、7天、30天数据)
2018/07/31 PHP
js写一个字符串转成驼峰的实例
2013/06/21 Javascript
js切换光标示例代码
2013/10/10 Javascript
jquery中使用循环下拉菜单示例代码
2014/09/24 Javascript
jquery滚动到顶部底部代码
2015/04/20 Javascript
JS组件系列之Bootstrap Icon图标选择组件
2016/01/28 Javascript
checkbox 选中一个另一个checkbox也会选中的实现代码
2016/07/09 Javascript
微信小程序 小程序制作及动画(animation样式)详解
2017/01/06 Javascript
JavaScript实现经纬度转换成地址功能
2017/03/28 Javascript
微信小程序 navbar实例详解
2017/05/11 Javascript
vue2中引用及使用 better-scroll的方法详解
2018/11/15 Javascript
Bootstrap4 gulp 配置详解
2019/01/06 Javascript
jQuery实现高级检索功能
2019/05/28 jQuery
SSM+layUI 根据登录信息显示不同的页面方法
2019/09/20 Javascript
JavaScript实现原型封装轮播图
2020/12/27 Javascript
[00:53]TI3正赛第三天 DK怒破A队不败金身 现场国旗飘扬热血激昂
2013/08/10 DOTA
[02:47]DOTA2英雄基础教程 野性怒吼兽王
2013/12/05 DOTA
仅用500行Python代码实现一个英文解析器的教程
2015/04/02 Python
详解设计模式中的工厂方法模式在Python程序中的运用
2016/03/02 Python
python下载图片实现方法(超简单)
2017/07/21 Python
启动targetcli时遇到错误解决办法
2017/10/26 Python
TripAdvisor德国:全球领先的旅游网站
2017/12/07 全球购物
英国在线照明超市:Castlegate Lights
2019/10/30 全球购物
存储过程和sql语句的优缺点
2014/07/02 面试题
如何用Java实现列出某个目录下的所有子目录
2015/07/20 面试题
施工质量承诺书范文
2014/05/30 职场文书
节能环保标语
2014/06/12 职场文书
上班迟到检讨书范文300字
2014/11/02 职场文书
党的群众路线教育实践活动个人对照检查材料(校长)
2014/11/05 职场文书
成绩单评语
2015/01/04 职场文书
三峡人家导游词
2015/01/31 职场文书
党员转正意见怎么写
2015/06/03 职场文书
乡镇司法所2015年度工作总结
2015/10/14 职场文书