Ver Mensaje Individual
  #3 (permalink)  
Antiguo 09/01/2011, 03:48
Avatar de Manuellama
Manuellama
 
Fecha de Ingreso: noviembre-2006
Ubicación: Zafra, Extremadura, Spain, Spain
Mensajes: 174
Antigüedad: 17 años, 5 meses
Puntos: 10
Respuesta: agregar contador de caracteres al lado de input o textarea

<input type="text" maxLength="10" id="texto" onKeyUp="document.getElementById('cuenta').innerHT ML = this.value.length+'/'+this.maxLength;" /><div id="cuenta"></div>
<script>document.getElementById('cuenta').innerHTM L = document.getElementById('texto').value.length+'/'+document.getElementById('texto').maxLength;</script>

<script language="javascript">

function attachEvent(name,elementName,callBack) {
var element = elementName;
if(typeof elementName == 'string') {
element = document.getElementById(elementName);
}
if (element.addEventListener) {
element.addEventListener(name, callBack,false);
} else if (element.attachEvent) {
element.attachEvent('on' + name, callBack);
}
}

function maxLength()
{

var field= event != null ? event.srcElement:e.target;
if(field.maxChars != null) {
if(field.value.length >= parseInt(field.maxChars)) {
event.returnValue=false;
alert("more than " +field.maxChars + " chars");
return false;
}
}
}

function maxLengthPaste()
{
event.returnValue=false;
var field= event != null ? event.srcElement:e.target;
if(field.maxChars != null) {
if((field.value.length + window.clipboardData.getData("Text").length) > parseInt(field.maxChars)) {
alert("more than " +field.maxChars + " chars");
return false;
}
}
event.returnValue=true;
}
</script>
<textarea rows="5" cols="6" maxLength="100" id="textarea1" onKeyUp="document.getElementById('cuenta2').innerH TML=document.getElementById('textarea1').value.len gth+'/'+document.getElementById('textarea1').maxLength;" ></textarea>

<div id="cuenta2"></div>
<script>document.getElementById('cuenta2').innerHT ML=document.getElementById('textarea1').value.leng th+'/'+document.getElementById('textarea1').maxLength;
attachEvent("keypress","textarea1",maxLength);
attachEvent("paste","textarea1",maxLengthPaste);
</script>



<script language="javascript">

function setTextAreaListner(eve,func) {
var ele = document.forms[0].elements;
for(var i = 0; i <ele.length;i++) {
element = ele[i];
if (element.type) {
switch (element.type) {
case 'textarea':
attachEvent(eve,element,func);
}
}
}
}
</script>
<script language="javascript">
setTextAreaListner("keypress",maxLength);
setTextAreaListner("paste",maxLengthPaste);
</script>

Dreamweaver pone automáticamente maxlength en el autocomplete, pero javascript sólo admite maxLength.
Para el código del textarea...ver ese link, que es de donde lo he modificado.
http://www.codeproject.com/KB/script...th_check.aspx;