Tengo esta idea de calcular la edad del campo de datos de un formulario de contacto usando JQuery y luego usar el valor de edad para ocultar o mostrar otros campos del formulario.
Aquí hay un borrador de la idea que he ensamblado con algunos fragmentos de código que se encuentran en la web (lamentablemente, no estoy acostumbrado a JQuery):
<script type="text/javascript"> jQuery(document).ready(function ($) { function getAge("#bdate") { var today = new Date(); var birthDate = new Date("#bdate"); var age = today.getFullYear() - birthDate.getFullYear(); var m = today.getMonth() - birthDate.getMonth(); if (m < 0 || (m === 0 && today.getDate() < birthDate.getDate())) { age--; } } $(document).ready(function() { $("#genitori").hide(); $('#bdate').change(function() { function getAge(bdate) { var today = new Date(); var birthDate = new Date(bdate); var age = today.getFullYear() - birthDate.getFullYear(); var m = today.getMonth() - birthDate.getMonth(); if (m < 0 || (m === 0 && today.getDate() < birthDate.getDate())) { age--; } } if (age<18) { $("#genitori").show(); } else { $("#genitori").hide(); } } }); } </script> <table> <tr> <td> <h3> User </h3> </td> </tr> <tr> <td> <label for="name">Name:</label> <input type="text*" id="name"> </td> <td> <label for="birthday">Birthday:</label> <input type="date" id="bdate"> </td> </tr> <div id="parents"> <tr> <td> <h3> Parents </h3> </td> </tr> <tr> <td> <label for="Pname">Parents Name:</label> <input type="text*"> </td> </tr> </div> </table>En mi humilde opinión, no tienes idea de lo que estás haciendo. Pero primero, haces una función llamada getAge it entre paréntesis, pon una variable, asígnale el nombre que quieras, es decir, cumpleaños; este cumpleaños poner aquí var birthDate = new Date(birthday); y ahora puede usar esta función en el valor de sus entradas de esta manera. Tome un valor de la entrada como var valueOfInput = $("#dbdate").val() y coloque este valor en la function getAge (valueOfInput) así es como obtiene el resultado del conteo, pero desea usarlo para la declaración if, mejor que usted puede hacer es hacer una variable que contenga este valor; así que después de ejecutar la función, pon var resultOfFunction o lo que quieras. Ahora es la parte final, debe usar esta variable para la instrucción if como if(resultOfFunction>18){return secretField.show();}else{return secretField.hide()}