我正在编写一个JQuery来显示在textarea / input字段中输入时剩余字符的数量。但它似乎没有用,我对JQuery很新,所以我确信下面的简单内容是代码的副本:
$(":textarea[data-limit-input]").keyup(function () {
var charLength = $(this).val().length;
var charLimit = $(this).attr("data-val-length-max");
// Displays count
$(this).next("span").html(charLength + " of " + charLimit + " characters used");
// Alert when max is reached
if ($(this).val().length > charLimit)
$(this).next("span").html("<strong>You may only have up to " + charLimit + " characters. </strong>");
});
任何帮助将不胜感激
答案 0 :(得分:2)
这对我有用:
我更改了textarea选择器,将正确的数据值添加到charLimit并关闭了funktion和if语句。
EDIT 我更新了它,如果你试图在达到限制时进行输入并使其更漂亮,它将返回false:)
答案 1 :(得分:1)
好像你错过了});在末尾?另外:textarea可以写成$(“textarea [data-limit-input]”),因为这是一个普通的CSS选择器。
否则我看不出有什么奇怪的。
答案 2 :(得分:0)
为textarea设置attr maxlength:http://www.w3schools.com/tags/att_input_maxlength.asp 每个keyup检查计数maxlength - textarea.val()。length
答案 3 :(得分:0)
数据限制输入是textarea的ID还是名称?
我试试
$('textarea#data-limit-input').keyup(handler);
或
$('textarea[name="data-limit-input"]').keyup(handler);
答案 4 :(得分:0)
您也可以在textarea中尝试使用此代码来保留字符输入。
代码是:
jQuery(document).ready(function(){
var totalChars = 200;
var countTextBox = jQuery('#comment')
var charsCountEl = jQuery('#countchars');
charsCountEl.text(totalChars);
countTextBox.keyup(function() {
var thisChars = this.value.replace(/{.*}/g, '').length;
if(thisChars > totalChars)
{
var CharsToDel = (thisChars-totalChars);
this.value = this.value.substring(0,this.value.length-CharsToDel);
}else{
charsCountEl.text( totalChars - thisChars );
}
});
});
您还可以在此处查看演示。 http://jsfiddle.net/kishan_web/1k49s5vr/