jQuery 限制輸入字符串長度
我們后臺(tái)做程序的時(shí)候,比如錄入一篇文章,文章會(huì)有摘要,我們希望文章的字符長度是我們可以控制的,我們不希望它太長,比如限制只能輸入250個(gè)字符,下面的代碼實(shí)現(xiàn)了這種功能。
先來看一下效果圖

代碼如下:
<!DOCTYPE HTML>
<html>
<head>
<meta charset="utf-8">
<title>無標(biāo)題文檔</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',
// 定義內(nèi)部容器的CSS類名
fullClass = 'js_txtFull',
// 定義超出字符的CSS類名
disabledClass = 'disabled'; // 定義不可用提交按鈕CSS類名
// 統(tǒng)計(jì)字?jǐn)?shù)
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);
});
// 單個(gè)
$('#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 - 輕量級(jí)輸入字?jǐn)?shù)提示插件</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文本框?qū)崟r(shí)顯示可輸入字?jǐn)?shù)并可禁止輸入提示超出,強(qiáng)!
<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>
以上就是本文的全部內(nèi)容,希望能給大家一個(gè)參考,也希望大家多多支持腳本之家。
相關(guān)文章
Jquery實(shí)現(xiàn)多選下拉列表左右移動(dòng)
這篇文章主要為大家詳細(xì)介紹了Jquery實(shí)現(xiàn)多選下拉列表左右移動(dòng),文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2022-02-02
基于jquery的inputlimiter 實(shí)現(xiàn)字?jǐn)?shù)限制功能
因客戶要求區(qū)分全角跟半角,所以在jquery.inputlimiter.js插件上還做了些小改動(dòng)。2010-05-05
從JavaScript 到 JQuery (1)學(xué)習(xí)小結(jié)
本人使用JavaScript 已經(jīng)有2年左右的時(shí)間了,一直被它簡潔優(yōu)雅的代碼所吸引, 近期接觸了 JQuery這個(gè)庫 , 感覺還不錯(cuò), 但是并不意味著要舍棄 JavaScript , 而是更宣揚(yáng)結(jié)合使用 .2009-02-02
輕松學(xué)習(xí)jQuery插件EasyUI EasyUI創(chuàng)建樹形網(wǎng)絡(luò)(1)
這篇文章主要幫助大家輕松學(xué)習(xí)jQuery插件EasyUI,并且教大家如何利用EasyUI創(chuàng)建樹形網(wǎng)絡(luò),感興趣的小伙伴們可以參考一下2015-11-11
基于jQuery實(shí)現(xiàn)的文字按鈕表單特效整理
這里給大家整理了10個(gè)熱門的基于jQuery實(shí)現(xiàn)的文字、按鈕、表單等特效的代碼,集合起來方便大家對(duì)比使用2014-12-12
jQuery結(jié)合HTML5制作的愛心樹表白動(dòng)畫
這篇文章主要給大家分享的是一則jQuery結(jié)合HTML5制作的愛心樹表白動(dòng)畫的特效代碼,各位宅在家里的程序猿們,再辛苦的工作,也不要忘記你們的女朋友哦。2015-02-02

