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的trim,ltrim,rtrim自定义函数
Sep 21 Javascript
js中 javascript:void(0) 用法详解
Aug 11 Javascript
详解js界面跳转与值传递
Nov 22 Javascript
jQuery加密密码到cookie的实现代码
Apr 18 jQuery
bootstrap基本配置_动力节点Java学院整理
Jul 14 Javascript
angular 内存溢出的问题解决
Jul 12 Javascript
Vue+Mock.js模拟登录和表格的增删改查功能
Jul 26 Javascript
详解javascript中的Error对象
Apr 25 Javascript
Vue+Element实现网页版个人简历系统(推荐)
Dec 31 Javascript
vue.js this.$router.push获取不到params参数问题
Mar 03 Javascript
OpenLayers3实现测量功能
Sep 25 Javascript
js 压缩图片的示例(只缩小体积,不更改图片尺寸)
Oct 21 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
PL-880隐藏功能
2021/03/01 无线电
php图片处理:加水印、缩略图的实现(自定义函数:watermark、thumbnail)
2010/12/02 PHP
第五章 php数组操作
2011/12/30 PHP
Gambit vs ForZe BO3 第一场 2.13
2021/03/10 DOTA
jquery 框架使用教程 AJAX篇
2009/10/11 Javascript
jQuery AJAX 调用WebService实现代码
2010/03/24 Javascript
浅析onsubmit校验表单时利用ajax的return false无效问题
2013/07/10 Javascript
jquery通过closest选择器修改上级元素的方法
2015/03/17 Javascript
javascript包装对象实例分析
2015/03/27 Javascript
js仿淘宝和百度文库的评分功能
2016/05/15 Javascript
jQuery使用ajax跨域获取数据的简单实例
2016/05/18 Javascript
JS中使用mailto实现将用户在网页中输入的内容传递到本地邮件客户端
2016/10/08 Javascript
bootstrapValidator bootstrap-select验证不可用的解决办法
2017/01/11 Javascript
ES6学习笔记之Set和Map数据结构详解
2017/04/07 Javascript
深入理解JavaScript继承的多种方式和优缺点
2017/05/12 Javascript
js实现图片上传预览原理分析
2017/07/13 Javascript
使用JavaScript解析URL的方法示例
2019/03/01 Javascript
JS实现求字符串中出现最多次数的字符和次数示例
2019/07/05 Javascript
Vuex中实现数据状态查询与更改
2019/11/08 Javascript
解决Vue.js应用回退或刷新界面时提示用户保存修改问题
2019/11/24 Javascript
JavaScript实现留言板案例
2020/03/17 Javascript
公众号SVG动画交互实战代码
2020/05/31 Javascript
解决VUE项目localhost端口服务器拒绝连接,只能用127.0.0.1的问题
2020/08/14 Javascript
python 计算文件的md5值实例
2017/01/13 Python
Python线程创建和终止实例代码
2018/01/20 Python
Python中Numpy包的安装与使用方法简明教程
2018/07/03 Python
Python3操作读写CSV文件使用包过程解析
2020/04/10 Python
意大利比基尼品牌:MISS BIKINI
2019/11/02 全球购物
PHP面试题大全
2015/10/16 面试题
外包公司软件测试工程师
2014/11/01 面试题
“学雷锋活动月”总结
2014/03/09 职场文书
团日活动总结模板
2014/06/25 职场文书
2014年销售工作总结范文
2014/12/01 职场文书
计算机专业自荐信
2015/03/05 职场文书
参观监狱警示教育心得体会
2016/01/15 职场文书
Python实战之实现康威生命游戏
2021/04/26 Python