validate form and open modal

0

Good morning what happens is that I am trying to validate the form and that if it is incomplete that I do not open the modal! Who can help me?

 <script >      
           function validar(form){
           if (document.form.numdocumento.value=="" || document.form.nautorizacion.value==""  )
            {
            alert("Porfavor verifique los datos ya que algunos estan vacios!")
             return false;}  
             else{ return true;
               }
}
</script>
<!DOCTYPE html>
     <html lang="en">
               <head>

               <meta charset="utf-8">

               <meta name="viewport" content="width=device-width, initial-scale=1">
               <link rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.7/css/bootstrap.min.css">
               <script src="https://ajax.googleapis.com/ajax/libs/jquery/3.2.1/jquery.min.js"></script>
              <script src="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.7/js/bootstrap.min.js"></script>
               </head>

                   <div class="right_col" role="main"> 
                    <div class="">
                         <div class="page-title">
                             <div class="clearfix"></div>
                             <div class="col-md-12 col-sm-12 col-xs-12">
           
                                 <div class="x_panel">
                                     <div class="x_title">
                                         <h2>Radicaciòn de Tutelas</h2>
                                         <ul class="nav navbar-right panel_toolbox">
                          <li><a class="collapse-link"><i class="fa fa-chevron-up"></i></a>
                           </li>
                          <li><a class="close-link"><i class="fa fa-close"></i></a>
                          </li>
                                         </ul>
                                         <div class="clearfix"></div>
                                     </div>


                                     <!--ACA INICIA EL FORMULARIO-->
                
                      <form id="form" name="form" method="post" action="" onsubmit="return validar()">

            <div class="container">

           <div class="table-responsive" style="width:100%;">        
           <table class="table" style="border: 0px" style="width: 100%">
           <thead>
           <tr>

           <th>  <label><input required type="checkbox" id="documento" value="documento" name="documento"> Documento de Identidad</label>
                   </th>

          <th><label><input required  type="checkbox" id="formula" value="formula" name="formula"> Formula Original</label> </th>

          <th><label><input  required type="checkbox" id="historia" value="historia" name="historia"> Historia Clínica</label></th> 
            </tr>
                 </thead>
                      <tbody>
                            <tr>


                     <td> <label><input  required type="checkbox" name="autorizacion" id="cbox1" value="autorizacion"> Autorización</div></label>  </td>
                     <td><input  required type="date" id="myDate"  name="fecha"></td>
        <td>


               <label for="selec-eps">E.P.S: </label>
               <select required  value="entidad" name="entidad">
               <option></option>
               <option value="1">Nueva E.P.S</option>
               <option value="2">Saludvida</option>
               <option value="3">Sociedad Clinica Emcosalud</option>
               <option value="4">Asmet Salud</option>
               <option value="5">Ferro Carriles Nacionales</option>
               </select>
               </td></tr>


               <tr><td> 
               <label for="selec-documento">Tipo de Documento: </label>
               <select required  name="tidocumento">
               <option ></option>
               <option value="1">Cedula de Ciudadania</option>
               <option value="2">Tarjeta de Identidad</option>
               <option value="3">Registro Civil</option>
               </select>
               </td><td>


              <div style="width: 10px">
              <INPUT  id=text1 style="width: 141px; height: 20px" onkeypress="return valida(event)" size=32  placeholder="Numero Identidad"  required name="numdocumento">
               </div></td>
               
               <td> 
               <label for="selec-tutela"> Tipo de Tutela: </label>

               <select name="tutela" required id="select-tutela" >
               <option></option>
               <option value="1">Tutela Pos</option>
               <option value="2">Tutela No Pos</option>
               </select>
               </td></tr>

              <tr><td>
             <INPUT required  id=text1 style="width: 150px; height: 20px" onkeypress="return valida(event)" size=32   placeholder="Numero de Autorizacion" name="nautorizacion">
            <!--agegar campos de numero de autorización-->
            <form id="form" name="form" method="post">
            <a href="#" onclick="AgregarCampos();"> + Autorizaciòn</a>
            <div id="campos">
            <br>
            
               <script type="text/javascript">
               var nextinput = 0;
               function AgregarCampos(){
               nextinput++;
                autorizacion  =  '<li id="rut'+nextinput+'">Autorizaciòn  <input type="text"  size="20" id="campo' + nextinput + '"&nbsp; name="campo' + nextinput + '"&nbsp; /></li> <p>';
                $("#campos").append(autorizacion);
                }
               </script>
               <!--aca caba temina la funcion para agregar los campos-->


               <p>
                </td>
                <td>
                <textarea   style="width:250px; height: 60px" name="observaciones" value="observaciones" placeholder="Observaciones" rows="10" cols="40"></textarea>
               </td> 
               <td></td>
               <thead>
               <tr>
               <th></th>
               <th>

                   <!--boton que abre la ventana modal-->
                  <button   type="submit" value="radicar" onclick="validar();"
                  class="btn btn-info btn-lg" data-toggle="modal" data-target="#miModal" class="btn btn-info btn-lg">Radicar</button> </p>
                  </th></tr>


                 <!--aca termina el formulario-->






                 <!--inicio de ventana modal -->
                 </thead></p>
                    <div class="modal fade" id="miModal" tabindex="-1" role="dialog" aria-labelledby="myModalLabel" aria-hidden="true">
                    <div class="modal-dialog" role="document">
                    <div class="modal-content">
                    <div class="modal-header">
                    <button type="button" class="close" data-dismiss="modal" aria-label="Close">
                    <span aria-hidden="true">&times;</span>
                    </button>
                    <h4 class="modal-title" id="myModalLabel">Registro Médico</h4>
                     </div>
                     <div class="modal-body">


                <div class="form-group" >
                    <label class="control-label col-md-3 col-sm-3 col-xs-12" style="text-align: center;">Registro Médico Nº <span class="required"></span>
                    </label>


                    <div style="text-align: center;" > <INPUT style="text-align: center;" id=text1 style="width:150px; height: 20px" onkeypress="return valida(event)" size=32 name=text1 
                    placeholder="Digite Registro Medico">
                    </INPUT></div>

                     <p></p>
                     <br></br>
                     </div> <div style="text-align: center;"> <button style="text-align: center;" id="save_data" type="submit" class="btn btn-success">Guardar</button>



                    </div>
                    </div>
                    <div class="modal-footer">
            <button type="button" class="btn btn-default" data-dismiss="modal">Cerrar</button>
             <!--Fin de la Ventana modal-->

                   </div>
                   </div> </th>
                   <th></th> 
                   </tr>
                   </thead>
                




           <script>
           function valida(e){
          tecla = (document.all) ? e.keyCode : e.which;

          //Tecla de retroceso para borrar, siempre la permite
          if (tecla==8){
          return true;
          }

             // Patron de entrada, en este caso solo acepta numeros
             patron =/[0-9]/;
             tecla_final = String.fromCharCode(tecla);
             return patron.test(tecla_final);
                            }
                     </script>
                   </div>
                </div>
            </div>
        </div>
    </div>
</div>
</div><!-- /page content -->
    
asked by Toli Soft 29.01.2018 в 17:10
source

1 answer

0

I understand that your problem is that you do not want the "Medical Registry" modal to open if the validation fails.

Your problem is that the modal opens independently of the validation process since you have configured the button that launches it with the attributes data-toggle and data-target .

You can remove these attributes, and launch the modality through JavaScript in the following way:

$('#miModal').modal();

This being so, you can launch the modal in your method validar :

function validar(form){
    if(document.form.numdocumento.value=="" || document.form.nautorizacion.value==""){
        alert("Porfavor verifique los datos ya que algunos estan vacios!")
        return false;
    }  
    else{ 
        $('#miModal').modal();  //<----- si es valido, lanzar la modal
        return true;
    }
}
    
answered by 31.01.2018 / 12:01
source