Business
Jobs
  • About Us
  • Solutions
    • Job Postings
      Post your job and receive qualified candidates in 48h.
    • Candidate Assessments
      500+ technical and psychological tests, plus anti-fraud.
    • Headhunting
      Tailor-made executive search from start to finish.
    • Payroll + EOR
      Payroll dispersal and EOR across 15+ LATAM countries.
  • Pricing
  • Jobs

0

233
Views
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 answers
Answer question

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 Report
Answer question
Find remote jobs

Discover the new way to find a job!

Top jobs
Top job categories
Business
Post vacancy Pricing Sales
Legal
Terms and conditions Privacy policy
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Show me some job opportunities
There's an error!