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模仿msgbox提示效果代码
Jun 10 Javascript
jquery如何把参数列严格转换成数组实现思路
Apr 01 Javascript
js调用css属性写法
Sep 21 Javascript
解决Jquery鼠标经过不停滑动的问题
Mar 03 Javascript
javascript操作excel生成报表示例
May 08 Javascript
JS模拟简易滚动条效果代码(附demo源码)
Apr 05 Javascript
JS实现淡入淡出图片效果的方法分析
Dec 20 Javascript
vue.js简单配置axios的方法详解
Dec 13 Javascript
React中的refs的使用教程
Feb 13 Javascript
Vue.js实现tab切换效果
Jul 24 Javascript
微信小程序实现侧边分类栏
Oct 21 Javascript
keep-Alive搭配vue-router实现缓存页面效果的示例代码
Jun 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
星际争霸秘籍
2020/03/04 星际争霸
php SQL Injection with MySQL
2011/02/27 PHP
php上传文件并显示上传进度的方法
2015/03/24 PHP
PHP实现蛇形矩阵,回环矩阵及数字螺旋矩阵的方法分析
2017/05/29 PHP
简单谈谈PHP面向对象之标识对象
2017/06/27 PHP
PHP实现将优酷土豆腾讯视频html地址转换成flash swf地址的方法
2017/08/04 PHP
laravel手动创建数组分页的实现代码
2018/06/07 PHP
用javascript实现在小方框中浏览大图的代码
2007/08/14 Javascript
关于IE、Firefox、Opera页面呈现异同 写脚本很痛苦
2009/08/28 Javascript
jQuery 源码分析笔记(7) Queue
2011/06/19 Javascript
别了 JavaScript中的isXX系列
2012/08/01 Javascript
php和js对数据库图片进行等比缩放示例
2014/04/28 Javascript
教你如何使用firebug调试功能了解javascript闭包和this
2015/03/04 Javascript
Javascript原型链的原理详解
2016/01/05 Javascript
JQuery 获取Dom元素的实例讲解
2017/07/08 jQuery
vue环境搭建简单教程
2017/11/07 Javascript
JS实现登录页密码的显示和隐藏功能
2017/12/06 Javascript
如何更好的编写js async函数
2018/05/13 Javascript
详解在Vue中使用TypeScript的一些思考(实践)
2018/07/06 Javascript
vue-auto-focus: 控制自动聚焦行为的 vue 指令方法
2018/08/25 Javascript
4个顶级JavaScript高级文本编辑器
2018/10/10 Javascript
微信小程序实现同一页面取值的方法分析
2019/04/30 Javascript
重命名批处理python脚本
2013/04/05 Python
Python编程中的for循环语句学习教程
2015/10/14 Python
pip安装时ReadTimeoutError的解决方法
2018/06/12 Python
Python实现二叉搜索树BST的方法示例
2019/07/30 Python
python PyQt5/Pyside2 按钮右击菜单实例代码
2019/08/17 Python
opencv-python 提取sift特征并匹配的实例
2019/12/09 Python
实习自荐信
2013/10/13 职场文书
运动会表扬稿大全
2014/01/16 职场文书
霸王洗发水广告词
2014/03/14 职场文书
史上最牛的辞职信
2015/02/28 职场文书
2015年党建工作目标责任书
2015/05/08 职场文书
道歉信怎么写
2015/05/12 职场文书
师范生见习自我总结
2015/06/23 职场文书
2019毕业典礼主持词!
2019/07/05 职场文书