Cita:
Iniciado por djmashe Hola a todos, mi consulta es la siguiente:
¿como puedo validar que el contenido del editor textarea TinyMCE no permita vacios? ya que de la forma tradicional con js no funciona.
Si es un textarea normal se valida, pero si lo habilito como editor textarea no cumple la condición.
desde ya muchas gracias
Tambien tuve el mismo problema y no encontré al respecto información que me ayude con el problema.
Después de probar varias cosas entendí que cuando se envía el formulario el campo toma el valor. Cuando se hace un onSubmit para validar los campos encuentro que aun no está la información en el campo asociado al editor TinyMCE. Por tal razón decidí hacer una variación en mi script de validación que aparentemente funciona bien.
La idea de dicho escript es utilizar un onSubmit donde se validan todos los demás campos y por ultimo llamo otra función con un setTimeout para retardar el proceso y por último retorno falso en la validación. En este caso el formulario no se envía pero se actualiza el campo asociado al editor mientras que se ejecuta otra función que puede validar el campo que está actualizado; esta se encarga de enviar ó no el formulario.
Espero que te sirva el script. Aquí dejo un ejemplo:
Codigo Html:
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
"http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<title>Documento sin título</title>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
</head>
<body>
<table width="520" border="0" cellpadding="0" cellspacing="1" bgcolor="#F7F7F7">
<tr>
<td bgcolor="#FDFDFD"><form action="" method="post" name="formx" onSubmit = "return validarfrm(this)">
<table width="520" border="0" cellspacing="0" cellpadding="0">
<tr>
<td width="125" height="25"> Tipo: </td>
<td width="395"><select name="tipo_sol" id="tipo_sol">
<option value="nd">Seleccionar>></option>
<option value="1">Valor 1</option>
<option value="2">Valor 2</option>
</select></td>
</tr>
<tr>
<td height="30" colspan="2"> Descripcion</td>
</tr>
<tr>
<td height="30" colspan="2"> <div align="center">
<textarea name="txtdescripcion" cols="55" rows="6" id="txtdescripcion"></textarea>
</div></td>
</tr>
<tr>
<td> </td>
<td> </td>
</tr>
<tr>
<td height="30"> </td>
<td><input type="submit" name="Submit" value="enviar"> </td>
</tr>
</table>
</form></td>
</tr>
</table>
</body>
</html>
Script de validación:
<script language="javascript">
function validarfrm(frm){
if(frm.tipo_sol.value=='nd'){
alert ("Debe seleccionar el Tipo!");
return false;
}
setTimeout("enviarfrm()",100);
return false;
}
function enviarfrm(){
frm=document.formx;
if(frm.txtdescripcion.value.length<15){
alert ("Debe ingresar una decripción válida!");
return false;
}
if(confirm("Confirma enviar?")){
frm.submit();
}
}
</script>
saludos. Walther Bojaca