Foros del Web » Programando para Internet » Javascript »

Ayuda.... Por favor...

Estas en el tema de Ayuda.... Por favor... en el foro de Javascript en Foros del Web. Saludos al foro: Siento ser tan pesado... pero no se a quien recurrir y si no arreglo esto ..... pues no se lo que puede ...
  #1 (permalink)  
Antiguo 17/07/2003, 09:28
 
Fecha de Ingreso: junio-2003
Ubicación: Santiago de Compostela
Mensajes: 603
Antigüedad: 20 años, 10 meses
Puntos: 0
Ayuda.... Por favor...

Saludos al foro:
Siento ser tan pesado... pero no se a quien recurrir y si no arreglo esto ..... pues no se lo que puede pasar.
Por resumir, tengo un campo en un formulario de inserción de datos que debe ocupar 180 caracteres. Como comprendereis es un campo bastante largo y a mí no me gustan nada las barras de desplazamiento, entonces en vez de hacerlo en un campo de texto lo he hecho en un area de texto. Mi idea era hacerla de 60 caracteres por 3 lineas, pero mi sorpresa es que no me deja fijar el tamaño máximo del area de texto, con lo que cuando escribo más de 180 caracteres al pulsar el boton de enviar el formulario me da un error la base de datos y me dice que me he pasado del tamaño del campo.
Para arreglar este problema me han mandado este código. Pero solo es valido para un campo. Cuando añado más de un campo funciona ma.
Podría retocar el código alguno de ustedes para que funcione con varios campos y decirme como puedo añadirlos.

Les envío el código:

<script language="JavaScript">
function comprobar(texto){
if(texto.length>179){
texto = texto.substr(0,179);
document.form1.textarea.value = texto;
}
document.getElementById("cuenta").innerHTML=texto. length+1+" caracteres. (180 máx.)";
}
</script>
</head>

<body>
<form name="form1" method="post" action="">
<textarea name="textarea" cols="80" rows="3" onKeyDown="comprobar(this.value)"></textarea>
<div id="cuenta"></div>
</form>
</body>
</html>

Gracias a todos por su ayuda.
  #2 (permalink)  
Antiguo 17/07/2003, 09:50
 
Fecha de Ingreso: marzo-2001
Ubicación: Gran Canaria
Mensajes: 381
Antigüedad: 23 años, 2 meses
Puntos: 2
si bien no me termina de gustar el metodo de las capas (por que de por si no me gusta usar capas), aqui te dejo la modificacion del codigo quehas puesto. Solo hay dos textareas, pero veras que es muy intuitivo meter todos los que quieras:


Código:
<html>
<head>
<script language="JavaScript">
	function comprobar(obj,nombreCapa){
		texto = obj.value;

		if(texto.length>179){
			texto = texto.substr(0,179);
			obj.value = texto;
		}

		document.getElementById(nombreCapa).innerHTML=texto.length+1+" caracteres. (180 máx.)";
	}
</script>
</head>

<body>
<form name="form1" method="post" action="">
<textarea name="textarea1" cols="80" rows="3" onKeyDown="comprobar(this,'cuenta1')"></textarea>
<div id="cuenta1">&nbsp;</div>
<br>
<textarea name="textarea2" cols="80" rows="3" onKeyDown="comprobar(this,'cuenta2')"></textarea>
<div id="cuenta2">&nbsp;</div>
</form>
</body>
</html>

De todas formas, voy a ver si lo cambio un poco para solucionar que al pulsar "Supr" te suma uno en vez de restarlo....


ToKaTa.
__________________

"Si pudieras volver.....¿.lo harias?"
  #3 (permalink)  
Antiguo 18/07/2003, 09:40
 
Fecha de Ingreso: junio-2003
Ubicación: Santiago de Compostela
Mensajes: 603
Antigüedad: 20 años, 10 meses
Puntos: 0
Muchas gracias Tokata:
Funciona perfectamente, te lo agradezco. Me has salvado la vida.
Ah.. y cuando pulsas supr descuenta un caracter, pero para ello tienes que moverte posteriormente hacia adelante o cambiar de control.
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 11:44.