<textarea name="content" cols="60" rows="6" onKeyUp="if(this.value.length >300) this.value=this.value.substr(0,300)">
意思就是,大于300个字符,自动截取前300个,后面忽略
上面那位朋友说的
<textarea name="A" cols="45" rows="2" onKeyDown="if (this.value.length>=20){event.returnValue=false}">aaaa</textarea>
也可以
var CSSrules = {'textarea' : function(element){
element.onkeydown = function(event){
return doKeyPress(element,event)
}
,
element.onpaste = function(){
return doPaste(element)
}
,
element.onkeyup = function(){
return doKeyUp(element)
}
,
element.onblur = function(){
return doKeyUp(element)
}
}
}Behaviour.register(CSSrules)var detect = navigator.userAgent.toLowerCase()// Keep user from entering more than maxLength characters
function doKeyPress(obj,evt){//键入时
maxLength = obj.getAttribute("maxlength")
var e = window.event ? event.keyCode : evt.which
if ( (e == 32) || (e == 13) || (e >47)) { //IE
if(maxLength &&(obj.value.length >maxLength-1)) {
if (window.event) {
window.event.returnValue = null
} else {
evt.cancelDefault
return false
}
}
}
}
function doKeyUp(obj){//按键时
maxLength = obj.getAttribute("maxlength")
if(maxLength &&obj.value.length >maxLength){
obj.value = obj.value.substr(0,maxLength)
}
sr = obj.getAttribute("showremain")
if (sr) {
document.getElementById(sr).innerHTML = maxLength-obj.value.length//sr是剩余可添加字符数
}
}// Cancel default behavior and create a new paste routine
function doPaste(obj){ //复制时
maxLength = obj.getAttribute("maxlength")
if(maxLength){
if ((window.event) &&(detect.indexOf("safari") + 1 == 0)) { //IE
var oTR = obj.document.selection.createRange()
var iInsertLength = maxLength - obj.value.length + oTR.text.length
try {
var sData = window.clipboardData.getData("Text").substr(0,iInsertLength)//截断多余的字符
oTR.text = sData
}
catch (err) {
}
if (window.event) { //IE
window.event.returnValue = null
} else {
//not IE
obj.value = obj.value.substr(0,maxLength)
return false
}
}
}
}
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)