Validate checkbox

Asked

Viewed 2,649 times

-1

I am trying to make a form when it is sent check that the check box is selected, if it does not issue a alert asking to select at least one category. The check box field searches for database categories. The problem is that when sending the post it gives the message, then we select at least 1 category, and when we try again it gives the same message. While we haven’t selected all of them it doesn’t stop giving the message.

I used the script below in my form:

<script>
function validar(formulario){
 if("['id_categoria']:checked") {
  alert("Selecione uma categoria para prosseguir");   
  return false; 
 }
               if(formulario.estado.value == '0'){
					alert("O campo ESTADO é obrigatório.");
					return false;
				}
								
				if(formulario.cidade.value == '0'){
					alert("O campo CIDADE é obrigatório.");
					return false;
				}
				return true;
			}
</script>  

My Form is like this:

<form id="formulario" action="dados_anuncio.asp?opc=inserir&id=<%=Request.QueryString("id")%>&idPlano=<%=Request.QueryString("idPlano")%>" method="post" name="form1" onSubmit="return validar(this);">
		          <select name="id_plano" class="list_of_vochers" id="id_plano" >
		            <option value="1">Plano Ouro GRÁTIS</option>
                  </select>
		          Selecione até 5 categorias:
		          <input name="idDoCliente" type="hidden" id="idDoCliente" value="<%=id%>">
<input name="idDoTipo" type="hidden" id="idDoTipo" value="<%=idTipo%>">
<%planoId_1 = Request.QueryString("idPlano")%>
<%Set csTipo = Server.CreateObject("ADODB.Recordset")
csTipo.Open "SELECT * FROM categorias_profissionais where id_tipo = "&planoId_1&" order by nome asc", Conexao%>
<ul class="checklist" id="convenios2">
  <% While NOT csTipo.EoF %><li> 
    &nbsp;&nbsp;&nbsp;<label for="id_categoria"><input id="id_categoria" name="id_categoria" type="checkbox" value="<% = csTipo("id") %>" onclick="verificar()"/>&nbsp;&nbsp;&nbsp;<% = csTipo("nome") %></label>
   </li><% csTipo.MoveNext %>
  <% Wend %>
  
  <li class="par">
  </ul>
<br>
                  Caso não encontre sua categoria, digite-a no campo abaixo:
                  <input name="outro" type="text"  id="outro" placeholder="Caso não tenha sua categoria acima digite aqui." />
                  <select name="estado" class="list_of_vochers" id="estado"  onChange="combo('#estado','#cidade','combo_subcategorias.asp')">
                    <option value="0" selected>Selecione o Estado</option>
                    <%
While (not csEstado.EOF)
%>
                    <option value="<%=(csEstado.Fields.Item("id").Value)%>"><%=(csEstado.Fields.Item("uf").Value)%> - <%=(csEstado.Fields.Item("nome").Value)%></option>
                    <%
  csEstado.MoveNext()
  Wend
%>
                  </select>
                  <select name="cidade" class="list_of_vochers" id="cidade" >
                    <option value="0">Selecione sua Cidade</option>
                  
                  </select>
Descrição do Anúncio
<% planoId = Request.QueryString("idPlano")
if planoId = 1 then%>
<textarea name="descricao" id="descricao" type="text" placeholder="Exemplo Profissional: Sou profissional especializado em acabamentos em porcelanato com experiência de 10 anos atuando em obras residenciais e comerciais. Tenho um ótimo custo benefício, qualidade e compromisso com prazos."></textarea>
<%else%>
<textarea name="descricao" id="descricao" type="text" placeholder="Exemplo Fornecedor: Somos uma loja de materiais de construção e estamos a mais de 15 anos no mercado fornecendo diversas linhas de materiais e produtos para todos os tipos de obras. Nossos preços são competitivos e nossos produtos são de qualidade."></textarea>
<%end if%>
		          <div id="outline">
		            <p>
		              <iframe width='100%' height='340px' frameborder='0' src='upload1.asp?idCliente=<%=Request.QueryString("id")%>' scrolling="no"></iframe>
		            </a></p>
		          </div>
<%if planoId = 2 then%> <h6>DADOS DE LOCALIZAÇÃO DO FORNECEDOR</h6><br>
                    <input name="logradouro" type="text" class="form-control" id="logradouro" placeholder="Logradouro, número" />
                    <input name="bairro" type="text" class="form-control" id="bairro" placeholder="Bairro" />
                    <input name="cep" type="text" class="form-control" id="cep" placeholder="Cep" onKeyPress="return txtBoxFormat(this, '99.999-999', event);" maxlength="10"/>
                    <%end if%><br>
<button type="submit" class="btn btn-primary btn-sm">Finalizar Cadastro</button>
                  </form>

1 answer

0

Browser other questions tagged

You are not signed in. Login or sign up in order to post.