Empresas
Empleos
  • Sobre nosotros
  • Soluciones
    • Publicación de vacantes
      Publica tu vacante y recibe candidatos calificados en 48h.
    • Evaluación de candidatos
      500+ pruebas técnicas y psicológicas, más anti-fraude.
    • Headhunting
      Búsqueda ejecutiva a la medida de principio a fin.
    • Nómina + EOR
      Dispersión de nómina y EOR en más de 15 países de LATAM.
  • Precios
  • Empleos

0

240
Vistas
No se puede incluir el archivo JS en HTML

Tengo una estructura de archivos simple con archivos HTML y JS que se ve así:

 templates/ - index.html - menuselector.js

Aquí hay un ejemplo de función que quiero importar a HTML:

 export function getTypeOfClient() { const select = document.getElementById('inputGroupSelect02'); const value = select.options[select.selectedIndex].value; if (value === '1') { document.getElementById('person').style.display = "block"; document.getElementById('company').style.display = "none"; } else if (value === '2') { document.getElementById('company').style.display = "block" document.getElementById('person').style.display = "none"; } else { document.getElementById('person').style.display = "none"; document.getElementById('company').style.display = "none"; } }

Aquí hay un ejemplo de código HTML que usa esta función:

 <select class="form-select" id="inputGroupSelect03" onchange="getTypeOfClient()"> <option value="0" selected>Choose...</option> <option value="1">Person</option> <option value="2">Company</option> </select>

Cuando escribo mi código en la etiqueta del script , todo funciona correctamente, pero decidí exportar este código a un archivo JS para hacerlo más limpio.

Importo esto en un archivo como este - <script type="text/javascript" src="menuselector.js"></script>

Y aquí esta el problema. Cada vez que en la consola obtengo 404 y no encuentro este archivo. Estaba tratando de importar esto en el encabezado, pie de página, cuerpo, etc., pero no funciona. ¿Qué hago mal?

over 4 years ago · Santiago Trujillo
1 Respuestas
Responde la pregunta

0

No puede usar módulos ES como detectores de eventos en línea onchange="getTypeOfClient()" ya que no se agregan al alcance global (que es el punto central de los módulos).

Asígnelo explícitamente al alcance global usando window.getTypeOfClient = getTypeOfClient , o elimine la palabra clave export si no desea módulos ES.

Dicho esto, usar detectores de eventos en línea es muy malo por muchas razones; en su lugar, use Javascript para definir o agregar el oyente.

over 4 years ago · Santiago Trujillo Denunciar
Responde la pregunta
Encuentra empleos remotos

¡Descubre la nueva forma de encontrar empleo!

Top de empleos
Top categorías de empleo
Empresas
Publicar vacante Precios Comercial
Legal
Términos y condiciones Política de privacidad
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Recomiéndame algunas ofertas
Necesito ayuda