¿Textarea vacío?
Hola:
Lo que quiero hacer es que el textarea de mi formulario no esté vacío cuando le doy a un botón submit; si lo está quiero sacar un mensaje.
Lo hago con esta función en Javascript llamada desde el tag del formulario ( <FORM NAME="formulario" METHOD="post" ACTION="insertar.jsp" onSubmit="calCarFaltan(formulario);">
):
function calCarFaltan( formulario )
{
alert (formulario);
var maxLongitud = 255;
var minLongitud = 1;
if ( formulario.aviso.value.length > maxLongitud )
{
formulario.aviso.value = formulario.aviso.value.substring (0,maxLongitud);
alert("¡Ha superado el límite!nRecuerde que dispone den" + maxLongitud + " caracteres");
return false;
}
else if (formulario.aviso.value.length < minLongitud )
{
alert ("aviso no introducido");
return false;
}
return true;
}
¿Cúal puede ser el problema? Siempre devuelve TRUE. No sé si están mal colocados los return...
Gracias por vuestra ayuda.
Lo que quiero hacer es que el textarea de mi formulario no esté vacío cuando le doy a un botón submit; si lo está quiero sacar un mensaje.
Lo hago con esta función en Javascript llamada desde el tag del formulario ( <FORM NAME="formulario" METHOD="post" ACTION="insertar.jsp" onSubmit="calCarFaltan(formulario);">
):
function calCarFaltan( formulario )
{
alert (formulario);
var maxLongitud = 255;
var minLongitud = 1;
if ( formulario.aviso.value.length > maxLongitud )
{
formulario.aviso.value = formulario.aviso.value.substring (0,maxLongitud);
alert("¡Ha superado el límite!nRecuerde que dispone den" + maxLongitud + " caracteres");
return false;
}
else if (formulario.aviso.value.length < minLongitud )
{
alert ("aviso no introducido");
return false;
}
return true;
}
¿Cúal puede ser el problema? Siempre devuelve TRUE. No sé si están mal colocados los return...
Gracias por vuestra ayuda.
Yo no tengo mucha idea de esto pero creo que el error esta en que la accion "return true" la hace siempre pues
if ( formulario.aviso.value.length > maxLongitud )
{
formulario.aviso.value = formulario.aviso.value.substring (0,maxLongitud);
alert("¡Ha superado el límite!nRecuerde que dispone den" + maxLongitud + " caracteres");
return false; <---- AQUI TE DEVUELVE FALSE SI SE CUMPLE
}
else if (formulario.aviso.value.length < minLongitud )
{
alert ("aviso no introducido");
return false;<----AQUI TE DEVUELVE FALSE SI SE CUMPLE
}
return true;<--Y COMO SIEMPRE LLEGARA AQUI TE DEVOLVERA TRUE TODAS LAS VECES
}
Espero que te sirva y sea por eso
if ( formulario.aviso.value.length > maxLongitud )
{
formulario.aviso.value = formulario.aviso.value.substring (0,maxLongitud);
alert("¡Ha superado el límite!nRecuerde que dispone den" + maxLongitud + " caracteres");
return false; <---- AQUI TE DEVUELVE FALSE SI SE CUMPLE
}
else if (formulario.aviso.value.length < minLongitud )
{
alert ("aviso no introducido");
return false;<----AQUI TE DEVUELVE FALSE SI SE CUMPLE
}
return true;<--Y COMO SIEMPRE LLEGARA AQUI TE DEVOLVERA TRUE TODAS LAS VECES
}
Espero que te sirva y sea por eso
Eso tb creía yo y he intentado ponerlo dentro de un else y da lo mismo siempre da TRUE. ¿Sabes como hacer que reconozca el textarea? Es que creo que ese es el problema