正在寻找一个可以处理多个文本区域的jQuery文本计数器
Looking for a jQuery text counter that can do multiple text areas!
我四处寻找,却找不到一个能满足我需求的插件:
- 可用于每页的多个文本区域
- 有最小和最大限制
- 用户键入时显示字符和警告
理想情况下,如果插件/函数根据字符限制阻止/启用表单,那就太好了。
我在哪里可以找到这样规格的插件?
我应该自己写吗?我是jQuery和JavaScript的新手,所以后一种选择是不可取的。但我可以修补和复制代码。
写这样的东西很容易。。。
$('textarea').keyup(function(){
var maxsize = 1000;
if( $(this).val().length > maxsize)
$(element).val($(element).val().substring(0, maxsize));
});
你也可以让它更通用。。。只是一个基本的例子:
<textarea data-min="10" data-max="1000"></textarea>
$('textarea').keyup(function(){
var maxsize = $(this).data('max');
if( $(this).val().length > maxsize)
$(element).val($(element).val().substring(0, maxsize));
});
$('textarea').blur(function(){
var minsize = $(this).data('min');
if( $(this).val().length < minsize)
alert("Mininum size for this textarea is " + minsize);
});
我会根据按键事件编写自己的。应该很简单:
var textarea = document.getElementById('someelement');
var formSubmitButton = document.getElementById('someelementsParentform');
textarea.addEventListener('keypress', function(){
checklength(this, minvalue, maxvalue, formSubmitButton)
}, false);
function checkLength(thiselement, min, max, formSubmitButton){
if(thiselement.length < min || thiselement > max){
formSubmitButton.disabled = true;
}else{
formSubmitButton.disabled = false;
}
这是未经测试的代码,但我相信它应该可以工作
要在另一个文本区域中使用它,只需在该文本区域中添加一个事件侦听器并调用该函数。
相关文章:
- CSS无法处理文本区域
- SVG元素——处理和选择文本
- 替代输入:基于按钮点击事件的文本更改处理程序
- 通过从文本区域获取代码,在画布中运行处理代码
- 如何使用 Angularjs 使流式处理更改输入中输入的文本
- 如何在不分隔跨度字母的情况下对文本进行动画处理
- 可以't get.click()来处理禁用的文本区域
- Cufon无法处理日语文本
- Action.on('模糊')不't处理输入文本-jQuery 1.9+
- 当通过javascript而不是按键/复制/粘贴更新文本输入时使用的事件处理程序
- 文本框中的数字需要处理
- jquery:$(input).keydown无法在单选按钮上设置处理程序,同样的代码也适用于文本
- 文本处理-识别代码语法
- 具有搜索文本的功能,不能很好地处理标点符号/符号.Jquery/Jquery mobile.
- 仅对路径/形状进行动画处理,在 raphael.js 集中没有文本
- 如果处理字符串值的文本区域是只读的,如何使用 JavaScript 在虚拟键盘上使用 CAPSLOCK 功能
- 如何使用javascript处理大型html文本页面
- 如何在javascript中处理大型文本文件需要切片算法
- 使用 Javascript 进行磁盘文本处理
- jQuery文本处理计数器