Ahora mi problema es mayor y es que nisiquiera me da error! Teoricamente cuando muestro el formulario y el usuario pulsa el botón Enviar, se manda a una función para que valide los parametros.
Cuando pruebo la página resulta que no aparece nada, y debería de aparecer error al menos, lo único que aparece es en la web primero error en la página y después listo.
Lo único que se me ocurre es que nisiquiera recoja las variables, con lo que ya probaría a hacerlo de otra manera, o teneis algún metodo que no sea Request.Write (que no me hace ni caso) para sacar algún mensaje y saber por dónde pasa al ejecutar.
Os dejo el código por si se os ocurre el fallo, ya que si acabo la validación habré acabado el proyecto x_x
Código:
function MostrarForm(paso){
var campo;
switch (paso){
case 1:
%>
<form action=prueba1.asp method=post name="formulari" id="formulari">
<table><tr>
<td>Nombre y Apellidos:</td> <td> <INPUT NAME="v_nombre"></td> </tr>
<td>E-mail:</td> <td> <INPUT NAME="v_mail"></td> </tr>
<td height="26">Telefono:</td>
<td> <INPUT NAME="v_telefono"></td> </tr>
<td>Sugerencia:</td> <td> <INPUT NAME="v_sugerencia"></td> </tr>
</table>
<input name="Button" type=button value=Enviar onClick="validar()">
<input type=RESET value=Borrar>
</form>
<%
}
}
/*Función Validar, Comprueba si hay algún error en Telefono,Mail o Sugerencia
Si no es valido darán una serie de errores.
El telefono debe ser numerico
El Mail debe de tener un formato correcto
El campo sugerencia no puede quedar vacio*/
function validar(){
var ftelefono, fmail, fsugerencia;
var strerror;
var arrayerror=new Array(3);
var vcorrecto;
var x;
var bien; // prueba
var numero;
var mail;
vcorrecto= true;
fsugerencia=Request.form("v_sugerencia").Trim;
b=("fsugerencia").length;
if (b=0){
arrayerror[0]=True;
vcorrecto=false;
}
fmail=Request.form("v_mail").Trim;
EsValidoMail(fmail) // mail valido es otra funcion a la que llamamos
if (bValido=false){
arrayerror[1]=true;
vcorrecto=false;
}
ftelefono=Request.form("v_telefono");
numero = parseInt("ftelefono");
if (isNaN(numero)){
arrayerror[2]=true;
vcorrecto=false
}
/*if(IsNumeric("ftelefono"))=true{
bien=1;
}else{
// arrayerror[2]=true;
vcorrecto= false;
}*/
return(arrayerror);
}
// Formamos una cadena de errores si los hay
if(vcorrecto=false) {
strerror="'Hay errores en los datos introducidos \n"
for (i=LBOUND(arrayerror); UBOUND(arrayerror);i++)
if (arrayerror(i)= True){
strerror=strerror & msgerror(i)
}
next
// Cerramos la comilla para JavaScript
strerror=strerror & "'"
}else{
vcorrecto=true
//iPaso="fin"
}
validar= vcorrecto
// Validar
// Function Mostrar fallo
function MsgError(codigo){
// Muestra un mensaje de fallo indicando lo que debemos cambiar o incluir
switch (codigo){
case 0:
MsgError = "* El campo Sugerencia no puede estar vacío \n"
case 1:
MsgError = "* El E-mail introducido no es correcto \n"
case 2:
MsgError = "* El telefono introducido no es correcto\n"
default: MsgError= " * Error no especificado"
}
} //MsgError
%>
<%
function ScriptError(){
Response.Write (vbTab & "window.alert(" & strError & ");" & vbCrlf);
Response.Write (vbTab & "history.back();" & vbCrlf);
}
}
%>
También he probado poniendo las variables sin las " "
Tipo esto: numero = parseInt(ftelefono);
if (isNaN(numero)){
y me dá el mismo error, si hace falta lo haré como me dijeron en otro post, para recoger las variables, pero quisiera saber si puede que esté mal cualquier otra cosa.