我有以下 jQuery 代码:
(function ($) {
$.fn.textareaCounter = function (options) {
// setting the defaults
// $("textarea").textareaCounter({ limit: 100 });
var defaults = {
limit: 100
};
var options = $.extend(defaults, options);
// and the plugin begins
return this.each(function () {
var obj, text, wordcount, limited;
obj = $(this);
obj.after('<span style="font-size: 11px; clear: both; margin-top: 3px; display: block;" id="counter-text">Max. ' + options.limit + ' words</span>');
obj.keyup(function () {
text = obj.val();
if (text === "") {
wordcount = 0;
} else {
wordcount = $.trim(text).split(" ").length;
}
if (wordcount > options.limit) {
$("#counter-text").html('<span style="color: #DD0000;">0 words left</span>');
limited = $.trim(text).split(" ", options.limit);
limited = limited.join(" ");
$(this).val(limited);
} else {
$("#counter-text").html((options.limit - wordcount) + ' words left');
}
});
});
};
})(jQuery);
And then the following:
$("textarea").textareaCounter();
最后是 HTML:
<textarea class="scanwid" name="q100" id="q100" rows="5" ></textarea>
<textarea class="scanwid" name="q101" id="q101" rows="5" ></textarea>
<textarea class="scanwid" name="q102" id="q102" rows="5" ></textarea>
它适用于textarea
计算最大单词数等,但是当我textarea
在页面上进一步添加时。计数器和限制器对另一个不起作用textareas
- 我知道我错过了一些非常简单的东西,但不知道是什么!
我怎样才能确保每个都有一个计数器Textarea
?