我有一個textarea,如果輸入的字符達到最大長度,我想阻止輸入。如何使用maxlength阻止在textarea中的進一步輸入
我目前有一個用於計算輸入字符的文本框的Jquery腳本,並且希望添加一些將在輸入150個字符後阻止輸入到textarea中的輸入。
我已經嘗試使用最大長度的插件與我的腳本一起使用,但它們似乎不起作用。幫助表示讚賞。
當前代碼
(function($) {
$.fn.charCount = function(options){
// default configuration properties
var defaults = {
allowed: 150,
warning: 25,
css: 'counter',
counterElement: 'span',
cssWarning: 'warning',
cssExceeded: 'exceeded',
counterText: '',
container: undefined // New option, accepts a selector string
};
var options = $.extend(defaults, options);
function calculate(obj,$cont) {
// $cont is the container, now passed in instead.
var count = $(obj).val().length;
var available = options.allowed - count;
if(available <= options.warning && available >= 0){
$cont.addClass(options.cssWarning);
} else {
$cont.removeClass(options.cssWarning);
}
if(available < 0){
$cont.addClass(options.cssExceeded);
} else {
$cont.removeClass(options.cssExceeded);
}
$cont.html(options.counterText + available);
};
this.each(function() {
// $container is the passed selector, or create the default container
var $container = (options.container)
? $(options.container)
.text(options.counterText)
.addClass(options.css)
: $('<'+ options.counterElement +' class="' + options.css + '">'+ options.counterText +'</'+ options.counterElement +'>').insertAfter(this);
calculate(this,$container);
$(this).keyup(function(){calculate(this,$container)});
$(this).change(function(){calculate(this,$container)});
});
};
})(jQuery);
作品不幸 – user342391 2010-08-26 19:27:47
最大長度是不是一個有效的textarea的屬性。 – 2010-08-26 19:39:04
是的,無論出於何種原因Chrome執行它,這是我測試。哦,另一種方法更新。 – Robert 2010-08-26 19:56:49