Estoy tratando de escribir un script simple que siga la lógica a continuación, pero tengo dificultades.
If "Name" field = blank Then Hide "Comment" field Else Show "Comment" field $(document).ready(function() { if ($('#ContactForm-name').value() == "") { $('#ContactForm-body').hide(); } else { $('#ContactForm-body').show(); } }); <script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>¿Puede alguien por favor ayudarme? Proporcioné una captura de pantalla del formulario y su HTML.
La tienda Shopify es https://permaink.myshopify.com/pages/contact con la tienda PW = "ayuda".
Echando un vistazo al enlace de ejemplo que proporcionó con la contraseña de 'ayuda', no parece que jQuery esté realmente cargado en el sitio, después de ejecutar lo siguiente en la consola: console.log(typeof window.jQuery) devuelve undefined .
Es posible que deba usar Vanilla JS para lograr lo que está tratando de hacer (o cargar jQuery, si tiene permisos para hacerlo y realmente necesita usarlo).
Usando JS sin jQuery, puede intentar hacer algo como:
window.addEventListener('load', function() { if (document.getElementById('ContactForm-name').value === '') { document.getElementById('ContactForm-body').style.display = 'none'; } else { document.getElementById('ContactForm-body').style.display = 'block'; } }); Tenga en cuenta que solo ocultar el ContactForm-body del formulario de contacto aún dejará un contorno de borde y se mostrará la etiqueta Comment , por lo que es posible que deba hacer algo más que ocultar el área de texto (busque el <div> principal en JS y oculte todo el bloque).