js限制文字个数
(function ($) {
$.fn.limitTextarea = function (opts) {
var defaults = {
maxNumber: 520, //允许输入的最大字数
position: ‘bottom’, //提示文字的位置,top:文本框上方,bottom:文本框下方
onOk: function () { }, //输入后,字数未超出时调用的函数
onOver: function () { } //输入后,字数超出时调用的函数
}
var option = $.extend(defaults, opts);
this.each(function () {
var _this = $(this);
var info = ‘<div style=”margin-left:620x; margin-top:5px;” id=”info’ + option.maxNumber + ‘”>还可以输入<b>’ + (option.maxNumber – getByteLen(_this.val())) + ‘</b>字符</div>’;
var fn = function () {
var $info = $(‘#info’ + option.maxNumber + ”);
var extraNumber = option.maxNumber – getByteLen(_this.val());
if (extraNumber >= 0) {
$info.html(‘还可以输入<b>’ + extraNumber + ‘</b>个字符’);
option.onOk();
} else {
$info.html(‘还可以输入<b>0</b>个字符’);
option.onOver();
}
};
switch (option.position) {
case ‘top’:
_this.before(info);
break;
case ‘bottom’:
default:
_this.after(info);
}
//绑定输入事件监听器
if (window.addEventListener) { //先执行W3C
_this.get(0).addEventListener(“input”, fn, false);
} else {
_this.get(0).attachEvent(“onpropertychange”, fn);
}
if (window.VBArray && window.addEventListener) { //IE9
_this.get(0).addEventListener(“onkeydown”, function () {
var key = window.event.keyCode;
(key == 8 || key == 46) && fn(); //处理回退与删除
});
_this.get(0).addEventListener(“oncut”, fn); //处理粘贴
}
});
}
})(jQuery)
function getByteLen(val) {
var len = 0;
for (var i = 0; i < val.length; i++) {
if (val[i].match(/[^\x00-\xff]/ig) != null) //全角
len += 2;
else
len += 1;
}
return len;
}
function getByteVal(val, max) {
var returnValue = ”;
var byteValLen = 0;
for (var i = 0; i < val.length; i++) {
if (val[i].match(/[^\x00-\xff]/ig) != null)
byteValLen += 2;
else
byteValLen += 1;
if (byteValLen > max)
break;
returnValue += val[i];
}
return returnValue;
}
$(‘#voicetext’).limitTextarea({
maxNumber: 520, //最大字数
position: ‘bottom’, //提示文字的位置,top:文本框上方,bottom:文本框下方
onOk: function () {
$(‘#voicetext’).css(‘background-color’, ‘white’);
}, //输入后,字数未超出时调用的函数
onOver: function () {
var value = $(‘#voicetext’).val();
$(‘#voicetext’).val(getByteVal(value, 520));
}
});
js限制文字个数
Warning: Use of undefined constant PRC - assumed 'PRC' (this will throw an Error in a future version of PHP) in /www/wwwroot/gaowenjie.cc/wp-content/themes/Git-alpha/comments.php on line 17