Critica a mi primera implementacion JS

08/05/2006 - 23:32 por Daniel G. Samborski | Informe spam
Hola, he aplicado lo que he leido de javascript en una pequeña pagina.
Es un formulario de envio, y me gustaria recibir sus comentarios y criticas
al respecto.
Debo decir que FrontPage ayuda mucho en la creacion de muchas cosas, casi
automatiza todo.
Pero por lo demas lo he hecho implementando cosas que he ido leyendo en
distintos cursos.

Daniel.

********************** Copiar en un archivo HTM ***************************

<html>

<head>

<script language="Javascript">
<!--
/*
Funcion para seleccionar todo
*/

function SeleccionarTodo(theField) {
var tempval=eval("document."+theField)
tempval.focus()
tempval.select()
}
/*
Funcion para deshabilitar el ENTER en el formulario
*/
function DesabilitarEnter (field, event)
{
var keyCode = event.keyCode ? event.keyCode : event.which ? event.which :
event.charCode;
if (keyCode == 13)
{
var i;
for (i = 0; i < field.form.elements.length; i++)
if (field == field.form.elements[i])
break;
i = (i + 1) % field.form.elements.length;
field.form.elements[i].focus();
return false;
}
else
return true;
}

/*
Funcion para validar el correo formato reconocible dato@dato.dato...
*/
function validaremail()
{

if(contacto.correo.value=="")
{
contacto.B1.disabled=true;
contacto.correo.style.color='#ffffff'
contacto.correo.style.backgroundColor='#ff0000'
return false;
}
// validar la cuenta de correo usando una expresión regular (RegExp)
if(contacto.correo.value.search(/^[\w-\.]+@([\w-]+\.)+[\w-]{2,4}$/ig))
{
contacto.B1.disabled=true;
contacto.correo.style.color='#ffffff'
contacto.correo.style.backgroundColor='#ff0000'
return false;
}
return true;
}

//
function Llamar_JS()
{
eval(arguments[0]);
}

function Cambiar_Propiedad()
{
var args=arguments,d=document,i,j,id=args[0],o=Cambiar_Objeto(id),s,ao,v,x;
d.$cpe=new Array(); if(o) for(i=2; i<args.length; i+=2) { v=args[i+1];
s="o";
ao=args[i].split("."); for(j=0; j<ao.length; j++) { s+="."+ao[j];
if(null==eval(s)) {
s=null; break; } } x=new Object; x.o=o; x.n=new Array(); x.v=new Array();
x.n[x.n.length]=s; eval("x.v[x.v.length]="+s); d.$cpe[d.$cpe.length]=x;
if(s) eval(s+"=v"); }
}

function Cambiar_Objeto(id,o)
{
var c,el,els,f,m,n; if(!o)o=document; if(o.getElementById)
el=o.getElementById(id);
else if(o.layers) c=o.layers; else if(o.all) el=o.all[id]; if(el) return
el;
if(o.id==id || o.name==id) return o; if(o.childNodes) c=o.childNodes; if(c)
for(n=0; n<c.length; n++) { el=Cambiar_Objeto(id,c[n]); if(el) return el; }
f=o.forms; if(f) for(n=0; n<f.length; n++) { els=f[n].elements;
for(m=0; m<els.length; m++){ el=Cambiar_Objeto(id,els[n]); if(el) return
el; } }
return null;
}

function Restaurar_Predeterminado()
{
var d=document,x; if(d.$cpe) { for(i=0; i<d.$cpe.length; i++) {
x=d.$cpe[i];
if(x.v=="") x.v=""; eval("x."+x.n+"=x.v"); } d.$cpe=null; }
}
</script>

<title>Coleccion de JavaScript</title>
<meta name="Microsoft Theme" content="clase-coleccion-javascript 1111,
default">
<meta name="Microsoft Border" content="b">
</head>

<body>
<table border="0" width="100%" id="table1" cellspacing="0" cellpadding="0">
<tr>
<td>
<table border="0" width="600" id="table3" cellspacing="0" cellpadding="0">
<tr>
<td width="600" height="143"
background="_themes/clase-coleccion-javascript/titulo.gif">
<p align="center"><font size="4">Formulario de contacto</font></td>
</tr>
<tr>
<td>
<form Enctype="text/plain" name="contacto" method="POST"
action="mailto:danielgsamborski@gmail.com" return false;">

<table border="0" width="500" id="table4" cellspacing="0"
cellpadding="0" onmouseover="activar();">
<tr>
<td align="right">&nbsp;</td>
<td width="336">&nbsp;</td>
</tr>
<tr>
<td align="right"><b>Nombre: </b></td>
<td width="336">&nbsp;<input onkeypress="return
DesabilitarEnter(this, event)" type="text" name="nombre" size="44"
value="Aquí tu nombre"
onclick="Llamar_JS('contacto.nombre.select()');";></td>
</tr>
<tr>
<td align="right"><b>Correo: </b></td>
<td width="336">&nbsp;<input onkeypress="return
DesabilitarEnter(this, event)" type="text" name="correo" size="44"
value="¿Cual es tu correo?"
onclick="Llamar_JS('contacto.correo.select()')"></td>
</tr>
<tr>
<td align="right"><b>Tipo de mensaje: </b></td>
<td width="336">&nbsp;<select onkeypress="return
DesabilitarEnter(this, event)" size="1" name="tipomensaje">
<option selected>Tengo una consulta</option>
<option>Me gustaría sugerir</option>
<option>Te envío este código</option>
</select></td>
</tr>
<tr>
<td align="right" valign="top"><b>Mensaje:&nbsp; </b>
<p>&nbsp;</td>
<td width="336">&nbsp;<textarea
onfocus="Llamar_JS('contacto.mensaje.select()')" onkeypress="return
DesabilitarEnter(this, event)" rows="12" name="mensaje" cols="43"
onclick="Llamar_JS('contacto.mensaje.select()')">aquí escribe lo que deseas
enviar o solicitar:

Tengo una consulta: Para realizar una pregunta especifica.

Me gustaría sugerir: Para realizar todo tipo de sugerencias.

Te envío este código: Si tenes un script que compartir con todos,
envíalo.</textarea></td>
</tr>
</table>
<p align="center">
<input type="submit" value="Enviar" name="B1"
onmouseout="Restaurar_Predeterminado();" onmouseover="control()">
<input type="reset" value="Restablecer" name="B2"
onclick="desacer_todo();"></p>
</form>
<p>&nbsp;</td>
</tr>
<tr>
<td>&nbsp;</td>
</tr>
</table>
</td>
</tr>
</table>

<script language=javascript>
function control()
{

// Valida el campo nombre.
if(contacto.nombre.value=='')
{
desactivar("nombre");
return true;
}
else
Restaurar_Predeterminado();

if(contacto.nombre.value=='Aquí tu nombre')
{
desactivar("nombre");
return true;
}
else
Restaurar_Predeterminado();

// Fin validacion campo nombre //

// Valida si la direccion de correo ingresada es correcta.
if (validaremail())
{
contacto.B1.disabled=false;
contacto.correo.style.color='#000000';
contacto.correo.style.backgroundColor='#ffffff';
}

// Fin validacion del campo de correo //

// Valida el area de texto.
if(contacto.mensaje.value=='')
{
desactivar("mensaje");
return true;
}
else
Restaurar_Predeterminado();

// Fin validacion del area de texto //
}

function desactivar(tipo)
{
contacto.B1.disabled=true;
Cambiar_Propiedad(/*id*/tipo,1,'style.color','#FFFFFF','style.backgroundColor','#FF0000');}function activar(){ contacto.B1.disabled=false;}function desacer_todo(){ contacto.B1.disabled=false; contacto.nombre.style.color='#000000' contacto.nombre.style.backgroundColor='#ffffff' contacto.correo.style.color='#000000' contacto.correo.style.backgroundColor='#ffffff' contacto.mensaje.style.color='#000000' contacto.mensaje.style.backgroundColor='#ffffff'}</script></body></html>
 

Leer las respuestas

#1 oR
09/05/2006 - 04:21 | Informe spam
Hola Daniel,

No soy el mas adecuado para opinar sobre esto, pero el mensaje que
genera tu formulario no deberia incluir lo que se lleno en el? ...
si es asi no lo hace o al menos no logro hacerlo funcionar, mi
malentendimiento del tema quiza,

Algo como este,

<html>
<head>
</head>
<body>

<script>
function now()
{
var thebody=document.testform.thebody.value;
window.location.href="mailto:?subject=Mail
Test&body=" +
escape(thebody);
}
</script>

<form name=testform>
<input type=button value="click me" onclick="now()">
<textarea name=thebody>
Esto deberia ir en el cuerpo del mensaje.
</textarea>
</form>

</body>
</html>


Saludos


"Daniel G. Samborski"
escribió en el mensaje
news:
| Hola, he aplicado lo que he leido de javascript en una pequeña
pagina.
| Es un formulario de envio, y me gustaria recibir sus comentarios
y criticas
| al respecto.
| Debo decir que FrontPage ayuda mucho en la creacion de muchas
cosas, casi
| automatiza todo.
| Pero por lo demas lo he hecho implementando cosas que he ido
leyendo en
| distintos cursos.
|
| Daniel.
|
| ********************** Copiar en un archivo HTM
***************************
|
[...]

Preguntas similares