jueves, 12 de diciembre de 2019

<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
 
 <title>Generar CURP</title>
    <script language="javascript" src="utils.js" type="text/javascript"></script>
    <script language="javascript" src="curp.js" type="text/javascript"></script>
    <script language="javascript" src="identificar.js" type="text/javascript"></script>
    <script language="javascript" src="validarcurp.js" type="text/javascript"></script>
<style>
#resultado {
    background-color: red;
    color: white;
    font-weight: bold;
}
#resultado.ok {
    background-color: green;
 }
</style>
<script>
//Función para validar una CURP
function curpValida(curp) {
    var re = /^([A-Z][AEIOUX][A-Z]{2}\d{2}(?:0[1-9]|1[0-2])(?:0[1-9]|[12]\d|3[01])[HM](?:AS|B[CS]|C[CLMSH]|D[FG]|G[TR]|HG|JC|M[CNS]|N[ETL]|OC|PL|Q[TR]|S[PLR]|T[CSL]|VZ|YN|ZS)[B-DF-HJ-NP-TV-Z]{3}[A-Z\d])(\d)$/,
        validado = curp.match(re);
 
    if (!validado)  //Coincide con el formato general?
     return false;
    
    //Validar que coincida el dígito verificador
    function digitoVerificador(curp17) {
        //Fuente https://consultas.curp.gob.mx/CurpSP/
        var diccionario  = "0123456789ABCDEFGHIJKLMNÑOPQRSTUVWXYZ",
            lngSuma      = 0.0,
            lngDigito    = 0.0;
        for(var i=0; i<17; i++)
            lngSuma = lngSuma + diccionario.indexOf(curp17.charAt(i)) * (18 - i);
        lngDigito = 10 - lngSuma % 10;
        if (lngDigito == 10) return 0;
        return lngDigito;
    }
  
    if (validado[2] != digitoVerificador(validado[1])) 
     return false;
        
    return true; //Validado
}


//Handler para el evento cuando cambia el input
//Lleva la CURP a mayúsculas para validarlo
function validarInput(input) {
    var curp = input.value.toUpperCase(),
        resultado = document.getElementById("resultado"),
        valido = "No válido";
        
    if (curpValida(curp)) { // ?? Acá se comprueba
     valido = "Válido"
        resultado.classList.add("ok");
    } else {
     resultado.classList.remove("ok");
    }
        
    resultado.innerText = "CURP: " + curp + "\nFormato: " + valido;
}
</script> 
</head>

<body>
<font face="Arial">
<form name="frm" method="post" id="frm">
                            <p>
                                Nombre: <input name="whNombre" id="whNombre" value="" type="text">
                            </p>
                            <p>
                                Apellido paterno:  <input name="whPaterno" id="whPaterno" value="" type="text" size="14">
                            </p>
                            <p>
                                Apellido materno:  <input name="whMaterno" id="whMaterno" value="" type="text"  size="14">
                            </p>
             
                            <p>
                                 Fecha de nacimiento:  <input value="" name="whFecNac" id="whFecNac" type="text" placeholder="dd/mm/aaaa"  size="10">
                            </p>
                            <p>
                                Género: <select name="whGenero" id="whGenero">
                   <option value="x"> -Elige- </option>
                   <option value="F"> FEMENINO </option>
                   <option value="M"> MASCULINO </option>
                </select> 
                            </p>
                            <p>
                                Nacionalidad: <select name="whNacion" id="whNacion">
         <option value="1">MÉXICO</option>
  <option value="2">AFGANISTAN</option>
  <option value="3">ALBANIA</option>
  <option value="4">ALEMANIA</option>
  <option value="5">ANDORRA</option>
  <option value="6">ANGOLA</option>
  <option value="180">ANGUILA</option>
  <option value="181">ANTÁRTICA</option>
  <option value="7">ANTIGUA Y BARBUDA</option>
  <option value="182">ANTILLAS NEERLANDESAS</option>
  <option value="8">ARABES UNIDOS(EMIRATOS)</option>
  <option value="9">ARABIA SAUDITA</option>
  <option value="10">ARGELIA</option>
  <option value="11">ARGENTINA</option>
  <option value="12">ARMENIA</option>
  <option value="183">ARUBA</option>
  <option value="13">AUSTRALIA</option>
  <option value="14">AUSTRIA</option>
  <option value="15">AZERBAIYAN</option>
  <option value="16">BAHAMAS</option>
  <option value="17">BAHREIN</option>
  <option value="18">BANGLADESH</option>
  <option value="19">BARBADOS</option>
  <option value="184">BELARUS</option>
  <option value="20">BÉLGICA</option>
  <option value="21">BELICE</option>
  <option value="22">BENIN</option>
  <option value="185">BERMUDA</option>
  <option value="186">BHUTAN</option>
  <option value="23">BIELORRUSIA</option>
  <option value="24">BIRMANIA</option>
  <option value="25">BOLIVIA</option>
  <option value="26">BOSNIA Y HERZEGOVINA</option>
  <option value="27">BOTSWANA</option>
  <option value="28">BRAZIL</option>
  <option value="29">BRUNEI DARUSSALAM</option>
  <option value="30">BULGARIA</option>
  <option value="31">BURKINA FASO</option>
  <option value="32">BURUNDI</option>
  <option value="33">BUTAN</option>
  <option value="34">CABO VERDE</option>
  <option value="35">CAMBOYA</option>
  <option value="36">CAMERÚN</option>
  <option value="37">CANADÁ</option>
  <option value="47">CHAD</option>
  <option value="48">CHECA</option>
  <option value="49">CHILE</option>
  <option value="50">CHINA</option>
  <option value="51">CHIPRE</option>
  <option value="38">COLOMBIA</option>
  <option value="39">COMORAS</option>
  <option value="40">CONGO</option>
  <option value="41">COREA DEL NORTE</option>
  <option value="42">COREA DEL SUR</option>
  <option value="44">COSTA DE MARFIL</option>
  <option value="43">COSTA RICA</option>
  <option value="167">CRANIA</option>
  <option value="45">CROACIA</option>
  <option value="46">CUBA</option>
  <option value="52">DINAMARCA</option>
  <option value="187">DJIBOUTI</option>
  <option value="53">DOMINICA</option>
  <option value="54">DOMINICANA (REPUBLICANA)</option>
  <option value="55">ECUADOR</option>
  <option value="56">EGIPTO</option>
  <option value="57">EL SALVADOR</option>
  <option value="58">EMIRATOS ARABES UNIDOS</option>
  <option value="188">ERITREA</option>
  <option value="189">ESLOVAQUIA</option>
  <option value="59">ESLOVENIA</option>
  <option value="60">ESPAÑA</option>
  <option value="61">ESTADOS UNIDOS</option>
  <option value="62">ESTONIA</option>
  <option value="63">ETIOPÍA</option>
  <option value="64">FEDERACIÓN DE RUSIA</option>
  <option value="65">FIJI</option>
  <option value="66">FILIPINAS</option>
  <option value="67">FINLANDIA</option>
  <option value="68">FRANCIA</option>
  <option value="69">GABÓN</option>
  <option value="70">GAMBIA</option>
  <option value="73">GEORGIA</option>
  <option value="71">GHANA</option>
  <option value="74">GIBRALTAR</option>
  <option value="72">GRANADA</option>
  <option value="75">GRECIA</option>
  <option value="190">GROENLANDIA</option>
  <option value="191">GUADALUPE</option>
  <option value="192">GUAM</option>
  <option value="76">GUATEMALA</option>
  <option value="193">GUAYANA FRANCESA</option>
  <option value="77">GUINEA</option>
  <option value="78">GUINEA BISSAU</option>
  <option value="79">GUINEA ECUATORIAL</option>
  <option value="80">GUYANA</option>
  <option value="81">HAITI</option>
  <option value="82">HOLANDA</option>
  <option value="83">HONDURAS</option>
  <option value="194">HONG KONG</option>
  <option value="84">HUNGRIA</option>
  <option value="85">INDIA</option>
  <option value="86">INDONESIA</option>
  <option value="87">INGLATERRA</option>
  <option value="89">IRÁN</option>
  <option value="88">IRAQ</option>
  <option value="90">IRLANDA</option>
  <option value="195">ISLA BOUVET</option>
  <option value="196">ISLA DE CHRISTMAS</option>
  <option value="197">ISLA NORFOLK</option>
  <option value="91">ISLANDIA</option>
  <option value="198">ISLAS CAIMÁN</option>
  <option value="199">ISLAS COOK</option>
  <option value="200">ISLAS DE COCOS (KEELING)</option>
  <option value="201">ISLAS FALKLAND (MALVINAS)</option>
  <option value="202">ISLAS FAROE</option>
  <option value="203">ISLAS GEORGIA DEL SUR</option>
  <option value="204">ISLAS HEARD Y MCDONALD</option>
  <option value="205">ISLAS MARIANAS DEL NORTE</option>
  <option value="206">ISLAS MARSHALL</option>
  <option value="207">ISLAS MENORES PERIFERICAS DE EUA</option>
  <option value="208">ISLAS SALOMÓN</option>
  <option value="209">ISLAS TURCAS Y CAICOS</option>
  <option value="210">ISLAS VÍRGENES BRITÁNICAS</option>
  <option value="211">ISLAS VIRGENES DE EUA</option>
  <option value="92">ISRAEL</option>
  <option value="93">ITALIA</option>
  <option value="94">JAMAICA</option>
  <option value="95">JAPON</option>
  <option value="96">JIBUTI</option>
  <option value="97">JORDANIA</option>
  <option value="98">KAZAJSTAN</option>
  <option value="99">KENIA</option>
  <option value="100">KIRGUISTAN</option>
  <option value="101">KIRIBATI</option>
  <option value="102">KUWAIT</option>
  <option value="103">LAOS</option>
  <option value="104">LESOTHO</option>
  <option value="105">LETONIA</option>
  <option value="106">LIBANO</option>
  <option value="107">LIBERIA</option>
  <option value="108">LIBIA</option>
  <option value="109">LIECHTENSTEIN</option>
  <option value="110">LITUANIA</option>
  <option value="111">LUXEMBURGO</option>
  <option value="212">MACAU</option>
  <option value="112">MACEDONIA</option>
  <option value="113">MADAGASCAR</option>
  <option value="213">MALASIA</option>
  <option value="114">MALAWI</option>
  <option value="115">MALDIVAS</option>
  <option value="116">MALI</option>
  <option value="117">MALTA</option>
  <option value="118">MARRUECOS</option>
  <option value="214">MARTINICA</option>
  <option value="119">MAURICIO</option>
  <option value="120">MAURITANIA</option>
  <option value="215">MAYOTTE</option>
  <option value="121">MICRONESIA</option>
  <option value="122">MOLDOVA</option>
  <option value="123">MONACO</option>
  <option value="124">MONGOLIA</option>
  <option value="216">MONTSERRAT</option>
  <option value="125">MOZAMBIQUE</option>
  <option value="217">MYANMAR</option>
  <option value="126">NAMIBIA</option>
  <option value="127">NAURU</option>
  <option value="128">NEPAL</option>
  <option value="129">NICARAGUA</option>
  <option value="130">NIGER</option>
  <option value="131">NIGERIA</option>
  <option value="218">NIUE</option>
  <option value="132">NORUEGA</option>
  <option value="133">NUEVA ZELANDIA</option>
  <option value="134">OMAN</option>
  <option value="135">PAISES BAJOS</option>
  <option value="136">PAKISTÁN</option>
  <option value="219">PALAU</option>
  <option value="137">PANAMA</option>
  <option value="220">PAPUA NUEVA GUINEA</option>
  <option value="138">PARAGUAY</option>
  <option value="139">PERÚ/option>
  <option value="221">PITCAIRN</option>
  <option value="222">POLINESIA FRANCESA</option>
  <option value="140">POLONIA</option>
  <option value="141">PORTUGAL</option>
  <option value="142">PUERTORICO</option>
  <option value="223">QATAR</option>
  <option value="224">REINO UNI.GRAN BRETAÑA E IRLANDA DEL NTE</option>
  <option value="225">REPÚBLICA ARABE SIRIA</option>
  <option value="226">REPÚBLICA CENTROAFRICANA</option>
  <option value="227">REPÚBLICA CHECA</option>
  <option value="228">REPÚBLICA DE COREA</option>
  <option value="229">REPÚBLICA DE MOLDOVA</option>
  <option value="230">REPÚBLICA DEMOCRÁTICA DEL CONGO</option>
  <option value="231">REPÚBLICA DEMOCRATICA POPULAR DE LAO</option>
  <option value="232">REPÚBLICA DOMINICANA</option>
  <option value="233">REPÚBLICA POPULAR DEMOCRÁTICA DE COREA</option>
  <option value="234">REPÚBLICA UNIDA DE TANZANIA</option>
  <option value="235">REUNION</option>
  <option value="236">RUMANIA</option>
  <option value="143">RWANDA</option>
  <option value="237">SAHARA OCCIDENTAL</option>
  <option value="144">SAMOA</option>
  <option value="238">SAMOA AMERICANA</option>
  <option value="239">SAN CRISTOBAL Y NEVIS</option>
  <option value="145">SAN MARINO</option>
  <option value="240">SAN PIERRE Y MIQUELON</option>
  <option value="241">SAN VICENTE Y LAS GRANADINAS</option>
  <option value="242">SANTA HELENA</option>
  <option value="146">SANTA LUCIA</option>
  <option value="172">SANTA SEDE (ESTADO CIUDAD  DEL VATICANO)</option>
  <option value="243">SANTO TOME Y PRINCIPE</option>
  <option value="147">SENEGAL</option>
  <option value="244">SEYCHELLES</option>
  <option value="148">SIERRA LEONA</option>
  <option value="149">SINGAPUR</option>
  <option value="150">SIRIA</option>
  <option value="151">SOMALIA</option>
  <option value="152">SRI LANKA</option>
  <option value="153">SUDAFRICA</option>
  <option value="154">SUDÁN</option>
  <option value="155">SUECIA</option>
  <option value="156">SUIZA</option>
  <option value="157">SURINAME</option>
  <option value="245">SVALBARD Y JAN MAYEN</option>
  <option value="158">SWAZILANDIA</option>
  <option value="159">TAILANDIA</option>
  <option value="246">TAIWAN</option>
  <option value="160">TANZANIA</option>
  <option value="247">TAYIKISTAN</option>
  <option value="248">TERRITORIO BRITANICO DEL OCEANO INDICO</option>
  <option value="249">TERRITORIOS FRANCESES DEL SUR</option>
  <option value="250">TIMOR DEL ESTE</option>
  <option value="161">TOGO</option>
  <option value="251">TOKELAU</option>
  <option value="162">TONGA</option>
  <option value="163">TRINIDAD Y TOBAGO</option>
  <option value="164">TUNEZ</option>
  <option value="165">TURQUIA</option>
  <option value="166">TUVALU</option>
  <option value="252">UCRANIA</option>
  <option value="168">UGANDA</option>
  <option value="169">URUGUAY</option>
  <option value="170">UZBEKISTAN</option>
  <option value="171">VANUATU</option>
  <option value="173">VENEZUELA</option>
  <option value="174">VIETNAM</option>
  <option value="253">WALLIS Y FUTUNA</option>
  <option value="175">YEMEN</option>
  <option value="176">YUGOSLAVIA</option>
  <option value="177">ZAIRE</option>
  <option value="178">ZAMBIA</option>
  <option value="179">ZIMBABWE</option>
  <option value="0">OTRO</option>
                </select>
                            </p>

                            <p>
           Entidad de nacimiento:  <select name="whEntNac" id="whEntNac">
        <option value="x"> - Elige un Estado- </option>
        <option value="0">DISTRITO FEDERAL</option>
  <option value="1">AGUASCALIENTES</option>
  <option value="2">BAJA CALIFORNIA NORTE</option>
  <option value="3">BAJA CALIFORNIA SUR</option>
  <option value="4">CAMPECHE</option>
  <option value="5">COAHUILA DE ZARAGOZA</option>
  <option value="6">COLIMA</option>
  <option value="7">CHIAPAS</option>
  <option value="8">CHIHUAHUA</option>
  <option value="9">DURANGO</option>
  <option value="10">GUANAJUATO</option>
  <option value="11">GUERRERO</option>
  <option value="12">HIDALGO</option>
  <option value="13">JALISCO</option>
  <option value="14">ESTADO DE MÉXICO</option>
  <option value="15">MICHOACÁN DE OCAMPO</option>
  <option value="16">MORELOS</option>
  <option value="17">NAYARIT</option>
  <option value="18">NUEVO LEÓN</option>
  <option value="19">OAXACA</option>
  <option value="20">PUEBLA DE LOS ÁNGELES</option>
  <option value="21">QUERÉTARO</option>
  <option value="22">QUINTANA ROO</option>
  <option value="23">SAN LUIS POTOSÍ</option>
  <option value="24">SINALOA</option>
  <option value="25">SONORA</option>
  <option value="26">TABASCO</option>
  <option value="27">TAMAULIPAS</option>
  <option value="28">TLAXCALA</option>
  <option value="29">VERACRUZ DE IGNACIO DE LA LLAVE</option>
  <option value="30">YUCATÁN</option>
  <option value="31">ZACATECAS</option>
  <option value="32">EXTRANJERO</option> 
                </select>
                            </p>
                            <p>
   <input type="button" value="Pulsa para generar CURP" onclick="btGenCurp(this.form, &#39;3&#39;);"><br><br>
   CURP: <input name="whCurp" id="whCurp" value="" type="text" > </p>
      
</form> 

<label>Escribe CURP para comprobarla:<br><br>
    <input type="text" id="valida" oninput="validarInput(this)"  >
</label>
<pre id="resultado"></pre>
</font>
</body></html>

No hay comentarios.:

Publicar un comentario