Ir para conteúdo

Arquivado

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

julinano

Verificador de form

Recommended Posts

No exemplo o script verifica se o campo está vazio, e se alguma das opções do radio/checkbox foi selecionada.

 

Os campos que são facultativos, basta adicionar o indicador: facultativo="1" na tag input;

 

Os campos condicionais, deve-se colocar o indicador: condicional="campo_condicao,valor_condicao" na tag;

 

O que for colocado como title do input aparecerá na mensagem pro usuario.

 

exemplo de uso(o campo nome é facultativo e o campo Exemplo Condicional é obrigatório se o sexo for feminino):

 

<form name="myForm" onsubmit="return verifica()">
Nome:<input type="text" facultativo="1" name="nome_usuario" title="Nome do Usuario" /> // não será verificado<br />
Login:<input type="text" name="login_usuario" title="Login do Usuario" /><br>
Sexo:<br/>
<input type="radio" name="sexo" value="masc" title="Sexo"/>Masculino<br/>
<input type="radio" name="sexo" value="fem" title="Sexo">Feminino<br/>
<input type="text" facultativo="1" name="exemplo_condicional" title="Exemplo condicional" condicional="sexo,masc"><br/>
<input type="submit">
</form>

<script>
function verifica(){
src=document.myForm;
for(x=0;x<src.elements.length;x++){
	if(src.elements[x].type=='text' && src.elements[x].value==''){

		if(src.elements[x].condicional){ //se o campo for condicional
	if((condicional(src.elements[x],src.elements[x].condicional))){return(false);}
	}

	if(src.elements[x].facultativo!=1){//se o campo for facultativo
		alert("Para continuar preencha o campo: " + src.elements[x].title); 
		src.elements[x].focus();
		return(false);}
	}
	
	if(src.elements[x].type=='radio' || src.elements[x].type=='checkbox'){
		if(verifica_radio(src.elements[x].name)){
		alert("Para continuar selecione uma opcao: " + src.elements[x].title); 
		src.elements[x].focus();
		return(false);}
	}
	}
}

function verifica_radio(name){
nao_ckd=1;
id=document.getElementsByName(name);
for(i=0;i<id.length;i++){
if(id[i].checked){nao_ckd=0;}
}
return(nao_ckd);
}

function condicional(src,condicao){
condicao=condicao.split(",");

valor='';
id=document.getElementsByName(condicao[0]);
for(i=0;i<id.length;i++){
if(id[i].checked){valor=id[i].value}
}

if(valor==condicao[1]){if(src.value==''){
alert("O campo "+ src.title +" é obrigatório!");
src.focus();
return(1);
}}
}
</script>

Compartilhar este post


Link para o post
Compartilhar em outros sites

ola isso e exatamente que estou procurando você pode me ajuda por favor como faco para add seu javascript neste meu formulario abaixo este formulario e de um postador automatico de meu site e os uploader sao preguisosos e nao preenche tudo que deve pelo meno o minimo para facilitar para todos fazerem o download você pode me dizer como faco isso veja o formulario abaixo

 

as opcoes que eu quero que sejam obrigatorias sao

 

NOME

GENERO

EDITORA

DESCRICAO

CAPA

 

 

 

<table width="600" border="0" align="center" cellpadding="0" cellspacing="0">
							  <--TOPICOINFO-->
			 <tr>
			   <td class="alt1" align="left"><table width="100%" border="0" cellspacing="0" cellpadding="0">
					  <tr>
					
						<td><table width="100%" border="0" align="center" cellpadding="0" cellspacing="0" class="box_form">
					  <tr>
						<td class="alt1"height="20" align="center"><div class="maintitle"><b>
						  </b><center>
							<b><font size="2">Informações do Livro </font></b>
						  </center></div>	</td>
					  </tr>
					
					  <tr>
						<td><table width="100%" border="0" cellpadding="0" cellspacing="0">
						  <tr>
																							<td align="left" valign="top">Escritor:</td>
							<td align="left"><input name="NOME" type="text" id="NOME" value="<--|NOME|-->" size="50" />
		 <em>  (Nome do escritor)</em></td>
						  </tr>
						  <tr>
																							<td align="left" valign="top">Nome do Livro:</td>
							<td align="left"><input name="LIVRO" type="text" id="LIVRO" value="<--|LIVRO|-->" size="50" />
																								<em> (Nome do livro)</em></td>
						  </tr>
						  <tr>
																							<td align="left" valign="top">Gênero:</td>
							<td align="left"><input name="GENERO" type="text" id="GENERO" value="<--|GENERO|-->" />
																								<em>  (Gênero do livro-Ex. Biografia, Tutorial, etc)</em> </td>
						  </tr>
						  <tr>
																							<td align="left" valign="top">Editora:</td>
							<td align="left"><input name="EDITORA" type="text" id="EDITORA" value="<--|EDITORA|-->" />
																								<em> (Ex: Ática, Macmillan, etc)</em></td>
						  </tr>
						  <tr>
																							<td align="left" valign="top"> Ano de Lançamento:</td>
							<td align="left"><input name="ANO" type="text" id="ANO" value="<--|ANO|-->" maxlength="4" />
																								<em> (apenas o ano)</em> </td>
						  </tr>
						  
						  <tr>
																							<td align="left" valign="top" class="alt1"><p>Dados do Livro:</p>
																							<p>			<em>(Sipnose do Livro)</em></p></td>
							<td align="left" class="alt1"><textarea name="DESCRICAO" cols="50" rows="10" id="DESCRICAO"><--|DESCRICAO|--></textarea></td>
						  </tr>
						  
						  <tr>
							<td class="alt1" align="left" valign="top">Comentérios do Uploader:</td>
					
							<td class="alt1" align="left"><textarea name="COMENTARIOS" cols="50" rows="5" id="COMENTARIOS"><--|COMENTARIOS|--></textarea></td>
						  </tr>
						  
						  
							<tr>
																							  <td align="left" valign="top">Capa:</td>
							  <td align="left"><input name="CAPA" type="text" id="CAPA" value="<--|CAPA|-->" size="50" /></td>
						  </tr>
							<tr>
																							  <td align="left" valign="top">Senha:</td>
							  <td align="left"><input name="SENHA" type="text" id="SENHA" value="<--|SENHA|-->" size="50" /></td>
						  </tr>
					
						</table></td>
					
					  </tr>
					</table></td>
					
					  </tr>
					  <tr>
						<td><table width="100%" border="0" align="center" cellpadding="0" cellspacing="0" class="box_form">
																						  <tr>
																							<td height="20"><div class="maintitle"><b> </b>
																									<center>
																									  <b><font size="2">Informações do Arquivo</font></b>
																									</center>
																							</div></td>
																						  </tr>
																						  <tr>
																							<td> </td>
																						  </tr>
																						  <tr>
																							<td><table width="100%" border="0">
																								<tr>
																								  <td width="20%" height="25" align="left" valign="top">Tamanho:</td>
																								  <td width="80%" align="left"><input name="TAMANHO" type="text" id="TAMANHO" value="<--|TAMANHO|-->" />
																								  <em>(Tamanho do ebook. em Mb's)</em></td>
																								</tr>
																								<tr>
																								  <td align="left" valign="top">Páginas:</td>
																								  <td align="left"><input name="PAGINAS" type="text" id="PAGINAS" value="<--|PAGINAS|-->" />
																									  <em>(Ex.: 200 páginas)</em></td>
																								</tr>
																																																<tr>
																								  <td align="left" valign="top">Idioma:</td>
																								  <td align="left"><input name="IDIOMA" type="text" id="IDIOMA" value="<--|IDIOMA|-->" />
																									  <em>(Ex.: Inglês, Português, ect)</em></td>
																								</tr>
																								<tr>
																								  <td align="left" valign="top">Formato: </td>
																								  <td align="left"><em>
																									<select name="FORMATO" id="FORMATO">
	<option selected="selected"><--|FORMATO|--></option>
																									  <option value="zip">zip</option>
																									  <option value="rar">rar</option>
																									  <option value="iso">iso</option>
																									  <option value="nrg">nrg</option>
																									  <option value="Bin/Cue">Bin/Cue</option>
																									  <option value="Mdf/Mds">Mdf/Mds</option>
																									  <option value="doc">doc</option>
																									  <option value="pdf">pdf</option>
																									  <option value="rtf">rtf</option>
																									  <option value="outro">Outro</option>
																									  
																									</select>
																								  </em></td>
																								</tr>
																							</table></td>
																						  </tr>
																						  
																						</table></td>
					  </tr>
					  <tr>
						<td> </td>
					  </tr>
					</table></td>
			 </tr>
			 <tr>
			   <td class="alt1" align="left"><table width="750" border="0" align="center" cellpadding="0" cellspacing="0" class="box_form">
					
					  <tr>
						<td class="alt1"height="20" align="center"><div class="maintitle"><b><font size="2">Informações dos Links</font></b></div></td>
					  </tr>
					  <tr>
						<td class="alt1" align="left">
						
						
						<table border="0" width="100%" align="center" cellpadding="0" cellspacing="2">
						
						  <tr>
						  
							<td class="alt1"width="87%" align="center">Clique em "novo link" para adicionar os links</td>
						  </tr>
						  <tr>
							<td>
							<center><--|LINKS|--></center>		</td>
						  </tr>
						</table>	</td>
					  </tr>
					  <tr>
						<td class="alt1" align="center">				   </tr>
					  <tr>
						<td class="alt1"height="15" align="center"><table border="0" cellspacing="0" cellpadding="0">
							<tr>
							  <td>ou, informe o local do arquivo txt no seu computador: </td>
							  <td><a href="help.php?h=txt_http" target="_blank"><img src="../images/posts/help.gif" width="22" height="23" border="0" /></a></td>
							</tr>
						</table></td>
					  </tr>
					  <tr>
						<td class="alt1"height="15" align="center"><--|UPTXT|--></td>
					  </tr>
					  
					  <tr>
						<td class="alt1"height="15" align="left"></td>
					  </tr>
					</table>
					</td>
			 </tr>
					
			 <tr>
			   <td class="alt1" align="center"><table width="100%" border="0" align="center" cellpadding="0" cellspacing="0" class="box_form">
				   <tr>
					 <td class="alt1"height="20"  align="center"><div class="maintitle"><b> </b>
						 <center>
						   <b><font size="2">Tutoriais</font></b>
					   </center></div></td>
				   </tr>
					
				   <tr>
					 <td class="alt1"  > </td>
				   </tr>
				   <tr>
					 <td class="alt1"  ><table width="100%" border="0" cellspacing="2" cellpadding="0">
						 <tr>
						   <td class="alt1" width="40%" align="right" valign="top"><strong>Tutoriais Recomendados:</strong><br>
							 ( para selecionar mais de um item, mantenha a tecla ctrl pressionada e clique)</td>
					
						   <td class="alt1"width="60%" align="left" valign="top"><center><--|TUTORIAIS|-->
						   </center></td>
					
						 </tr>
					 </table></td>
				   </tr>
				   <tr>
					 <td class="alt1"  > </td>
				   </tr>
					
			   </table></td>
			 </tr>
			 
														  
				  </table>

Compartilhar este post


Link para o post
Compartilhar em outros sites

amigo, o problema é que os seus campos já vêm com um value pré-definido... assim o script não vai funcionar...

a funcionalidade do script é justamente essa... verificar os campos que estão com value==''

:)

 

Obrigado pela ajuda GuttoSP

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.