main.js 1.1 KB

123456789101112131415161718192021222324252627282930313233343536373839
  1. //countrySelectTask
  2. let countrySelect = document.createElement('select')
  3. let citySelect = document.createElement('select')
  4. citySelect.id = "citySelect"
  5. countrySelect.id = "countrySelect"
  6. document.body.appendChild(countrySelect)
  7. document.body.appendChild(citySelect)
  8. fetch('https://raw.githubusercontent.com/russ666/all-countries-and-cities-json/master/countries.json')
  9. .then(res => res.json())
  10. .then(json => {
  11. let countrySelect = document.getElementById('countrySelect')
  12. let citySelect = document.getElementById('citySelect')
  13. function addOptions(select, arr) {
  14. for (let i = 0; i < arr.length; i++) {
  15. select.add(new Option(arr[i]))
  16. }
  17. }
  18. let countries = Object.keys(json)
  19. addOptions(countrySelect, countries)
  20. let defaultCities = json[countries[0]]
  21. addOptions(citySelect, defaultCities)
  22. countrySelect.addEventListener('change', function() {
  23. let cities = json[this.value]
  24. citySelect.length = 0
  25. addOptions(citySelect, cities)
  26. })
  27. console.log(json)
  28. })
  29. //tableMouseTask