mas alguma coisa não está correndo bem, pois está ignorando a condição.
Tenho a minha função de validação do form assim:
function MM_validateForm() { //v4.0
var i,p,q,nm,test,num,min,max,errors='',args=MM_validateForm.arguments;
for (i=0; i<(args.length-2); i+=3) { test=args[i+2]; val=MM_findObj(args[i]);
if (val) { nm=val.name; if (((val=val.value)!= "") || ((val=val.value)!= "Nome:")){
if (test.indexOf('isEmail')!=-1) { p=val.indexOf('@');
if (p<1 || p==(val.length-1)) errors+='• '+nm+': Tem que conter um endereço de e-mail válido.\n';
} else if (test!='R') { num = parseFloat(val);
if (isNaN(val)) errors+='• '+nm+': O número não é valido.\n';
if (test.indexOf('inRange') != -1) { p=test.indexOf(':');
min=test.substring(8,p); max=test.substring(p+1);
if (num<min || max<num) errors+='• '+nm+' Tem que ser um número entre '+min+' e '+max+'.\n';
} } } else if (test.charAt(0) == 'R') errors += '• '+nm+': É necessário.\n'; }
}
if (errors) alert('Os seguintes campos têm erros:\n'+errors);
document.MM_returnValue = (errors == '');
}
Pergunta
pinelicarlos
Oi,
Ei queria que esta condição testasse
if (val) { nm=val.name; if (((val=val.value)!= "") || ((val=val.value)!= "Nome:")){se o valor co campo é nulo "" ou se tem "Nome:" escrito, pois no form tenho isso desse modo: mas alguma coisa não está correndo bem, pois está ignorando a condição. Tenho a minha função de validação do form assim:function MM_validateForm() { //v4.0 var i,p,q,nm,test,num,min,max,errors='',args=MM_validateForm.arguments; for (i=0; i<(args.length-2); i+=3) { test=args[i+2]; val=MM_findObj(args[i]); if (val) { nm=val.name; if (((val=val.value)!= "") || ((val=val.value)!= "Nome:")){ if (test.indexOf('isEmail')!=-1) { p=val.indexOf('@'); if (p<1 || p==(val.length-1)) errors+='• '+nm+': Tem que conter um endereço de e-mail válido.\n'; } else if (test!='R') { num = parseFloat(val); if (isNaN(val)) errors+='• '+nm+': O número não é valido.\n'; if (test.indexOf('inRange') != -1) { p=test.indexOf(':'); min=test.substring(8,p); max=test.substring(p+1); if (num<min || max<num) errors+='• '+nm+' Tem que ser um número entre '+min+' e '+max+'.\n'; } } } else if (test.charAt(0) == 'R') errors += '• '+nm+': É necessário.\n'; } } if (errors) alert('Os seguintes campos têm erros:\n'+errors); document.MM_returnValue = (errors == ''); }E o Form assim:<form action="/cgi-bin/forms.pl" method="post" enctype="multipart/form-data" name="form" id="form" onSubmit="MM_validateForm('Nome','','R','Email','','RisEmail','Mensagem','','R');return document.MM_returnValue"> <div> <div class="line"><input type="text" name="Nome" value="Nome:" onfocus="this.value=''" /> </div> <div class="line"><input type="text" name="Email" value="E-mail:" onfocus="this.value=''" /> </div> <textarea name="Mensagem" cols="30" rows="5" onFocus="this.value=''">Mensagem:</textarea> <br /> <INPUT name="Submit" type="submit" class="link_4" value="Enviar"> </div> </form>Agradeço ajuda!
Link para o comentário
Compartilhar em outros sites
5 respostass a esta questão
Posts Recomendados
Participe da discussão
Você pode postar agora e se registrar depois. Se você já tem uma conta, acesse agora para postar com sua conta.