Ir para conteúdo

POWERED BY:

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

misterviralata

comparar campos

Recommended Posts

Ola amigos!tenho uma função que verifica se o campo está vazio e obriga o usuario a digitar 4 caracteres<html><head><script language="javascript"> function verifica() { document.all.msg1.innerHTML = ' '; document.Form1.titulo.className = 'campo1'; if (document.Form1.titulo.value.length < 4) { document.all.msg1.innerHTML = '<b>minimo de 4 caracteres</b>'; document.Form1.titulo.focus(); document.Form1.titulo.className = 'mensagem4'; return false; } elsedocument.all.msg1.innerHTML = ' '; document.Form1.titulo.className = 'campo1'; return true; } </script></head><body><form action="" method="post" name="Form1" id="valida" onSubmit="Valida()"><table><tr><td><input name="titulo" type="text" id="mensagem4" /></td><td><div id="msg1"></div></td></tr><tr><td colspan="2"><input name="valor" type="radio" value="1" checked><input name="valor" type="radio" value="2" checked></td></tr><tr><td colspan="2"><input type="submit" name="envia" value="Adicionar" onClick="return verifica(this.form)" ></td></tr></table></form></body></html>Como faço para comparar com mais um campo só que do tipo radiotentei assim mas não funcionou:if ((document.Form1.titulo.value.length < 4) and (document.Form1.valor.value == 1) { document.all.msg1.innerHTML = '<b>caso valor seja 1 minimo de 4 caracteres</b>'; document.Form1.titulo.focus(); document.Form1.titulo.className = 'mensagem4'; return false; } É que estou tentando obrigar o usuario a digitar X caracteres dependendo do valor escolhidoObrigado!

Compartilhar este post


Link para o post
Compartilhar em outros sites

Ola tmferreira!Obrigado pela ajuda, mas não funcionou!Será que tem alguma forma de verificar o valor do radio?para fazer uma verificação tipoif (document.Form1.nomedoradio.value == "1"){alert("campo titulo é obrigado 4 caracter)}if (document.Form1.nomedoradio.value == "2"){alert("campo titulo é obrigado 8 caracter)}Não entendo quase nada de javascript mas tem como fazer algo do tipo e se tiver como que aplico no codigo que tenho, porque este codigo é muito legal ele mostar a mensagem de erro sem mostar aquelas caixas chatinhas de alertobrigado!<html><head><script language="javascript"> function verifica() { document.all.msg1.innerHTML = ' '; document.Form1.titulo.className = 'campo1'; if (document.Form1.titulo.value.length < 4) { document.all.msg1.innerHTML = '<b>minimo de 4 caracteres</b>'; document.Form1.titulo.focus(); document.Form1.titulo.className = 'mensagem4'; return false; } elsedocument.all.msg1.innerHTML = ' '; document.Form1.titulo.className = 'campo1'; return true; } </script></head><body><form action="" method="post" name="Form1" id="valida" onSubmit="Valida()"><table><tr><td><input name="titulo" type="text" id="mensagem4" /></td><td><div id="msg1"></div></td></tr><tr><td colspan="2"><input name="valor" type="radio" value="1" checked><input name="valor" type="radio" value="2" checked></td></tr><tr><td colspan="2"><input type="submit" name="envia" value="Adicionar" onClick="return verifica(this.form)" ></td></tr></table></form></body></html>

Compartilhar este post


Link para o post
Compartilhar em outros sites

Olá,

O seu html está estranho. Não tem como deixar checado dois campos radio com o mesmo nome. =] Bom, mas tirando isso, vamos para a dúvida. Você não conseguirá pegar o value do campo marcado, se o mesmo tiver o mesmo nome, do mesmo jeito que pegamos de um campo text.

Faça um laço para pegar todos os campos com o nome "valor", verifique qual está checado, e depois pegue o value. Aí você pode comparar os valores.

for (var i= 0; i<document.Form1.valor.length; i++){	if (document.Form1.valor[i].checked)	{		var v = document.Form1.valor[i].value;	}}if ((document.Form1.titulo.value.length < 4) && (v==1)) { // continua...
Uma dica(?), use o document.getElementById() no lugar do document.all, nas primeiras linhas do seu script.

document.getElementById("msg1").innerHTML = ' ';

Compartilhar este post


Link para o post
Compartilhar em outros sites

×

Informação importante

Ao usar o fórum, você concorda com nossos Termos e condições.