Вызовы jQuery API не возвращают ожидаемые данные

Я пытаюсь добавить случаи Covid-19 на свой сайт через javascript/api, но что-то не так. Запрос по стране работает нормально, но запрос «всего» ничего не возвращает.

Вот и хочу получить в сумме "зараженных" со всего мира и во втором ряду из одной страны.

Если у кого-то есть идеи, что нужно изменить в коде, пожалуйста, дайте мне знать.

$(document).on('change','.corona-select', function() {
  var city = $(this).val();
  if (city == 'Kosovo') {
    $('#c_confirmed').html();
    $('#c_recovered').html();
    $('#c_deaths').html();
  }
  else if (city == 'total') {
    $('#c_confirmed').html();
    $('#c_recovered').html();
    $('#c_deaths').html();
  }
  else {
    $.get( "https://covid19.mathdro.id/api/countries/" + city, function( data ) {
      $('#c_confirmed').html(data.confirmed.value);
      $('#c_recovered').html(data.recovered.value);
      $('#c_deaths').html(data.deaths.value);
    });
  }
});
<script src = "https://cdnjs.cloudflare.com/ajax/libs/jquery/2.2.2/jquery.min.js"></script>

<div class = "selectBox">
    <select class = "form-control corona-select" name = "city">
      <option value = "total">Total</option>
      <option value = "Kosova">Kosova</option>
      <option value = "Albania">Albania</option>
      <option value = "Afghanistan">Afghanistan</option>
      <option value = "Algeria">Algeria</option>
      <option value = "Andorra">Andorra</option>
      <option value = "Argentina">Argentina</option>
      <option value = "Armenia">Armenia</option>
      <option value = "Australia">Australia</option>
      <option value = "Austria">Austria</option>
      <option value = "Azerbaijan">Azerbaijan</option>
      <option value = "Bahrain">Bahrain</option>
      <option value = "Bangladesh">Bangladesh</option>
      <option value = "Belarus">Belarus</option>
      <option value = "Belgium">Belgium</option>
      <option value = "Bhutan">Bhutan</option>
      <option value = "Bolivia">Bolivia</option>
      <option value = "Bosnia and Herzegovina">Bosnia and Herzegovina</option>
      <option value = "Brazil">Brazil</option>
      <option value = "Brunei">Brunei</option>
      <option value = "Bulgaria">Bulgaria</option>
      <option value = "Burkina Faso">Burkina Faso</option>
      <option value = "Cambodia">Cambodia</option>
      <option value = "Cameroon">Cameroon</option>
      <option value = "Canada">Canada</option>
      <option value = "Chile">Chile</option>
      <option value = "China">China</option>
      <option value = "Colombia">Colombia</option>
      <option value = "Congo (Kinshasa)">Congo (Kinshasa)</option>
      <option value = "Costa Rica">Costa Rica</option>
      <option value = "Cote d'Ivoire">Cote d'Ivoire</option>
      <option value = "Croatia">Croatia</option>
      <option value = "Cruise Ship">Cruise Ship</option>
      <option value = "Cuba">Cuba</option>
      <option value = "Cyprus">Cyprus</option>
      <option value = "Czechia">Czechia</option>
      <option value = "Denmark">Denmark</option>
      <option value = "Dominican Republic">Dominican Republic</option>
      <option value = "Ecuador">Ecuador</option>
      <option value = "Egypt">Egypt</option>
      <option value = "Estonia">Estonia</option>
      <option value = "Finland">Finland</option>
      <option value = "France">France</option>
      <option value = "French Guiana">French Guiana</option>
      <option value = "Georgia">Georgia</option>
      <option value = "Germany">Germany</option>
      <option value = "Greece">Greece</option>
      <option value = "Guyana">Guyana</option>
      <option value = "Holy See">Holy See</option>
      <option value = "Honduras">Honduras</option>
      <option value = "Hungary">Hungary</option>
      <option value = "Iceland">Iceland</option>
      <option value = "India">India</option>
      <option value = "Indonesia">Indonesia</option>
      <option value = "Iran">Iran</option>
      <option value = "Iraq">Iraq</option>
      <option value = "Ireland">Ireland</option>
      <option value = "Israel">Israel</option>
      <option value = "Italy">Italy</option>
      <option value = "Jamaica">Jamaica</option>
      <option value = "Japan">Japan</option>
      <option value = "Jordan">Jordan</option>
      <option value = "Korea, South">Korea, South</option>
      <option value = "Kuwait">Kuwait</option>
      <option value = "Latvia">Latvia</option>
      <option value = "Lebanon">Lebanon</option>
      <option value = "Liechtenstein">Liechtenstein</option>
      <option value = "Lithuania">Lithuania</option>
      <option value = "Luxembourg">Luxembourg</option>
      <option value = "Malaysia">Malaysia</option>
      <option value = "Maldives">Maldives</option>
      <option value = "Malta">Malta</option>
      <option value = "Martinique">Martinique</option>
      <option value = "Mexico">Mexico</option>
      <option value = "Moldova">Moldova</option>
      <option value = "Monaco">Monaco</option>
      <option value = "Mongolia">Mongolia</option>
      <option value = "me">Montenegro</option>
      <option value = "Morocco">Morocco</option>
      <option value = "Nepal">Nepal</option>
      <option value = "Netherlands">Netherlands</option>
      <option value = "New Zealand">New Zealand</option>
      <option value = "Nigeria">Nigeria</option>
      <option value = "North Macedonia">North Macedonia</option>
      <option value = "Norway">Norway</option>
      <option value = "Oman">Oman</option>
      <option value = "Pakistan">Pakistan</option>
      <option value = "Panama">Panama</option>
      <option value = "Paraguay">Paraguay</option>
      <option value = "Peru">Peru</option>
      <option value = "Philippines">Philippines</option>
      <option value = "Poland">Poland</option>
      <option value = "Portugal">Portugal</option>
      <option value = "Qatar">Qatar</option>
      <option value = "Reunion">Reunion</option>
      <option value = "Romania">Romania</option>
      <option value = "Russia">Russia</option>
      <option value = "San Marino">San Marino</option>
      <option value = "Saudi Arabia">Saudi Arabia</option>
      <option value = "Senegal">Senegal</option>
      <option value = "Serbia">Serbia</option>
      <option value = "Singapore">Singapore</option>
      <option value = "Slovakia">Slovakia</option>
      <option value = "Slovenia">Slovenia</option>
      <option value = "South Africa">South Africa</option>
      <option value = "Spain">Spain</option>
      <option value = "Sri Lanka">Sri Lanka</option>
      <option value = "Sweden">Sweden</option>
      <option value = "Switzerland">Switzerland</option>
      <option value = "Taiwan*">Taiwan*</option>
      <option value = "Thailand">Thailand</option>
      <option value = "Togo">Togo</option>
      <option value = "Tunisia">Tunisia</option>
      <option value = "Turkey">Turkey</option>
      <option value = "US">US</option>
      <option value = "Ukraine">Ukraine</option>
      <option value = "United Arab Emirates">United Arab Emirates</option>
      <option value = "United Kingdom">United Kingdom</option>
      <option value = "Vietnam">Vietnam</option>
    </select>
  </div>
</div>
<div class = "col-lg-3 col-md-3 col-12">
  <div class = "mapi-info">
    <p class = "title-mapi">Confirmed</p>
    <span class = "nr-mapi" id = "c_confirmed"></span>
  </div>
  <div class = "mapi red"></div>
</div>
<div class = "col-lg-3 col-md-3 col-12">
  <div class = "mapi-info">
    <p class = "title-mapi">Recovered</p>
    <span class = "nr-mapi" id = "c_recovered"></span>
  </div>
  <div class = "mapi green"></div>
</div>
<div class = "col-lg-3 col-md-3 col-12">
  <div class = "mapi-info">
    <p class = "title-mapi">Deaths</p>
    <span class = "nr-mapi" id = "c_deaths"></span>
  </div>
  <div class = "mapi gray"></div>
</div>

Вы правильно загрузили библиотеку jQuery? Это отсутствует в вашем примере в вопросе.

Sean 10.12.2020 21:45

Я сразу вижу одну проблему: ваш javascript проверяет Kosovo, но ваш второй вариант в элементе <select> — Kosova.

simmer 10.12.2020 21:48

Кстати, я добавил jQuery в фрагмент, и это, похоже, не проблема.

simmer 10.12.2020 21:54

Если вы исправите «Косова» на «Косово», это сработает — я голосую за то, чтобы закрыть этот вопрос как опечатку.

Stephen P 10.12.2020 21:56

Есть еще одна проблема: значение total не будет доступно из конечной точки /countries.

simmer 10.12.2020 21:57

Спасибо за ваши ответы! Это лучше прояснит проблему. Если вы проверите весь код, когда вы нажмете «Всего», он не покажет никаких цифр, и Косово я скорректировал, изменив имя с «Косово» на Косово. Теперь проблема осталась "Итого" не отображает ничего, что по умолчанию.

Pajtim 10.12.2020 21:59

оператор if работает правильно. вы не делаете ничего ценного в блоке if.... вы хотите сделать это $('#c_confirmed').html(""); (установить пустым) ?

J nui 10.12.2020 22:01

Есть две проблемы с «Всего» — как сказал simmer, запрос «всего» с конечной точки API не сработает. Во-вторых, элемент управления select начинается с выбора «Всего», поэтому вам нужно выбрать что-то еще, а затем вернуться и выбрать общее количество, чтобы изменение активировалось.

Stephen P 10.12.2020 22:01

Я добавил ответ, который решает обе эти проблемы

simmer 10.12.2020 22:17
Поведение ключевого слова "this" в стрелочной функции в сравнении с нормальной функцией
Поведение ключевого слова "this" в стрелочной функции в сравнении с нормальной функцией
В JavaScript одним из самых запутанных понятий является поведение ключевого слова "this" в стрелочной и обычной функциях.
Концепция локализации и ее применение в приложениях React ⚡️
Концепция локализации и ее применение в приложениях React ⚡️
Локализация - это процесс адаптации приложения к различным языкам и культурным требованиям. Это позволяет пользователям получить опыт, соответствующий...
Улучшение производительности загрузки с помощью Google Tag Manager и атрибута Defer
Улучшение производительности загрузки с помощью Google Tag Manager и атрибута Defer
В настоящее время производительность загрузки веб-сайта имеет решающее значение не только для удобства пользователей, но и для ранжирования в...
Безумие обратных вызовов в javascript [JS]
Безумие обратных вызовов в javascript [JS]
Здравствуйте! Юный падаван 🚀. Присоединяйся ко мне, чтобы разобраться в одной из самых запутанных концепций, когда вы начинаете изучать мир...
Система управления парковками с использованием HTML, CSS и JavaScript
Система управления парковками с использованием HTML, CSS и JavaScript
Веб-сайт по управлению парковками был создан с использованием HTML, CSS и JavaScript. Это простой сайт, ничего вычурного. Основная цель -...
JavaScript Вопросы с множественным выбором и ответы
JavaScript Вопросы с множественным выбором и ответы
Если вы ищете платформу, которая предоставляет вам бесплатный тест JavaScript MCQ (Multiple Choice Questions With Answers) для оценки ваших знаний,...
1
9
113
3
Перейти к ответу Данный вопрос помечен как решенный

Ответы 3

вы можете исправить это, добавив скрипт jquery в заголовок вашего html-файла, как в следующем примере.


<!DOCTYPE html>
<html lang = "en">
<head>
    <meta charset = "UTF-8">
    <meta name = "viewport" content = "width=device-width, initial-scale=1.0">
    <title>Document</title>
    <script src = "http://ajax.googleapis.com/ajax/libs/jquery/1.9.1/jquery.min.js"></script>

</head>
<body>
    <div class = "selectBox">
        <select class = "form-control corona-select" name = "city">
            <option value = "total">Total</option>
            <option value = "Kosova">Kosova</option>
            <option value = "Albania">Albania</option>
            <option value = "Afghanistan">Afghanistan</option>
            <option value = "Algeria">Algeria</option>
            <option value = "Andorra">Andorra</option>
            <option value = "Argentina">Argentina</option>
            <option value = "Armenia">Armenia</option>
            <option value = "Australia">Australia</option>
            <option value = "Austria">Austria</option>
            <option value = "Azerbaijan">Azerbaijan</option>
            <option value = "Bahrain">Bahrain</option>
            <option value = "Bangladesh">Bangladesh</option>
            <option value = "Belarus">Belarus</option>
            <option value = "Belgium">Belgium</option>
            <option value = "Bhutan">Bhutan</option>
            <option value = "Bolivia">Bolivia</option>
            <option value = "Bosnia and Herzegovina">Bosnia and Herzegovina</option>
            <option value = "Brazil">Brazil</option>
            <option value = "Brunei">Brunei</option>
            <option value = "Bulgaria">Bulgaria</option>
            <option value = "Burkina Faso">Burkina Faso</option>
            <option value = "Cambodia">Cambodia</option>
            <option value = "Cameroon">Cameroon</option>
            <option value = "Canada">Canada</option>
            <option value = "Chile">Chile</option>
            <option value = "China">China</option>
            <option value = "Colombia">Colombia</option>
            <option value = "Congo (Kinshasa)">Congo (Kinshasa)</option>
            <option value = "Costa Rica">Costa Rica</option>
            <option value = "Cote d'Ivoire">Cote d'Ivoire</option>
            <option value = "Croatia">Croatia</option>
            <option value = "Cruise Ship">Cruise Ship</option>
            <option value = "Cuba">Cuba</option>
            <option value = "Cyprus">Cyprus</option>
            <option value = "Czechia">Czechia</option>
            <option value = "Denmark">Denmark</option>
            <option value = "Dominican Republic">Dominican Republic</option>
            <option value = "Ecuador">Ecuador</option>
            <option value = "Egypt">Egypt</option>
            <option value = "Estonia">Estonia</option>
            <option value = "Finland">Finland</option>
            <option value = "France">France</option>
            <option value = "French Guiana">French Guiana</option>
            <option value = "Georgia">Georgia</option>
            <option value = "Germany">Germany</option>
            <option value = "Greece">Greece</option>
            <option value = "Guyana">Guyana</option>
            <option value = "Holy See">Holy See</option>
            <option value = "Honduras">Honduras</option>
            <option value = "Hungary">Hungary</option>
            <option value = "Iceland">Iceland</option>
            <option value = "India">India</option>
            <option value = "Indonesia">Indonesia</option>
            <option value = "Iran">Iran</option>
            <option value = "Iraq">Iraq</option>
            <option value = "Ireland">Ireland</option>
            <option value = "Israel">Israel</option>
            <option value = "Italy">Italy</option>
            <option value = "Jamaica">Jamaica</option>
            <option value = "Japan">Japan</option>
            <option value = "Jordan">Jordan</option>
            <option value = "Korea, South">Korea, South</option>
            <option value = "Kuwait">Kuwait</option>
            <option value = "Latvia">Latvia</option>
            <option value = "Lebanon">Lebanon</option>
            <option value = "Liechtenstein">Liechtenstein</option>
            <option value = "Lithuania">Lithuania</option>
            <option value = "Luxembourg">Luxembourg</option>
            <option value = "Malaysia">Malaysia</option>
            <option value = "Maldives">Maldives</option>
            <option value = "Malta">Malta</option>
            <option value = "Martinique">Martinique</option>
            <option value = "Mexico">Mexico</option>
            <option value = "Moldova">Moldova</option>
            <option value = "Monaco">Monaco</option>
            <option value = "Mongolia">Mongolia</option>
            <option value = "me">Montenegro</option>
            <option value = "Morocco">Morocco</option>
            <option value = "Nepal">Nepal</option>
            <option value = "Netherlands">Netherlands</option>
            <option value = "New Zealand">New Zealand</option>
            <option value = "Nigeria">Nigeria</option>
            <option value = "North Macedonia">North Macedonia</option>
            <option value = "Norway">Norway</option>
            <option value = "Oman">Oman</option>
            <option value = "Pakistan">Pakistan</option>
            <option value = "Panama">Panama</option>
            <option value = "Paraguay">Paraguay</option>
            <option value = "Peru">Peru</option>
            <option value = "Philippines">Philippines</option>
            <option value = "Poland">Poland</option>
            <option value = "Portugal">Portugal</option>
            <option value = "Qatar">Qatar</option>
            <option value = "Reunion">Reunion</option>
            <option value = "Romania">Romania</option>
            <option value = "Russia">Russia</option>
            <option value = "San Marino">San Marino</option>
            <option value = "Saudi Arabia">Saudi Arabia</option>
            <option value = "Senegal">Senegal</option>
            <option value = "Serbia">Serbia</option>
            <option value = "Singapore">Singapore</option>
            <option value = "Slovakia">Slovakia</option>
            <option value = "Slovenia">Slovenia</option>
            <option value = "South Africa">South Africa</option>
            <option value = "Spain">Spain</option>
            <option value = "Sri Lanka">Sri Lanka</option>
            <option value = "Sweden">Sweden</option>
            <option value = "Switzerland">Switzerland</option>
            <option value = "Taiwan*">Taiwan*</option>
            <option value = "Thailand">Thailand</option>
            <option value = "Togo">Togo</option>
            <option value = "Tunisia">Tunisia</option>
            <option value = "Turkey">Turkey</option>
            <option value = "US">US</option>
            <option value = "Ukraine">Ukraine</option>
            <option value = "United Arab Emirates">United Arab Emirates</option>
            <option value = "United Kingdom">United Kingdom</option>
            <option value = "Vietnam">Vietnam</option>
        </select>
    </div>
    </div>
    <div class = "col-lg-3 col-md-3 col-12">
    <div class = "mapi-info">
        <p class = "title-mapi">Confirmed</p>
        <span class = "nr-mapi" id = "c_confirmed"></span>
    </div>
    <div class = "mapi red"></div>
    </div>
    <div class = "col-lg-3 col-md-3 col-12">
    <div class = "mapi-info">
        <p class = "title-mapi">Recovered</p>
        <span class = "nr-mapi" id = "c_recovered"></span>
    </div>
    <div class = "mapi green"></div>
    </div>
    <div class = "col-lg-3 col-md-3 col-12">
    <div class = "mapi-info">
        <p class = "title-mapi">Deaths</p>
        <span class = "nr-mapi" id = "c_deaths"></span>
    </div>
    <div class = "mapi gray"></div>
    </div>
</body>
</html>
<script>

$(document).on('change','.corona-select', function(){
    var city = $(this).val();
    if (city == 'Kosovo'){
        $('#c_confirmed').html();
        $('#c_recovered').html();
        $('#c_deaths').html();
    }
    else if (city == 'total'){
        $('#c_confirmed').html();
        $('#c_recovered').html();
        $('#c_deaths').html();
    }
    else{
        $.get( "https://covid19.mathdro.id/api/countries/" + city, function( data ) {
            $('#c_confirmed').html(data.confirmed.value);
            $('#c_recovered').html(data.recovered.value);
            $('#c_deaths').html(data.deaths.value);
        });
    }
    
});</script>

jQuery отсутствовал в исходном фрагменте, но не был причиной проблем с кодом.

simmer 10.12.2020 22:15
Ответ принят как подходящий

Глядя на API, у вас опечатка в ваших <select> опциях: Kosova не будет работать, а Kosovo будет:

Во-вторых, вам нужно будет запросить другую конечную точку, чтобы получить данные total.

  • общие данные: https://covid19.mathdro.id/api/
  • данные страны: https://covid19.mathdro.id/api/countries/${country}

Наконец, если вы хотите немедленно отобразить общие значения, не выбирая страну, а затем снова выбирая «итого», вам нужно будет иметь возможность абстрагировать некоторую логику из обработчика .on().

Вот переписывание вашей логики, которое удаляет некоторое дублирование, немедленно запрашивает «итого» и исправляет «город» на «страну».

// this function doesn't need to know about the <select> element
// all it needs is a string value
function showValuesForCountry(country) {
  var endpoint = 'https://covid19.mathdro.id/api/';

  // swap in the country-specific URL if we're not trying to get total data
  if (country != 'total') {
    endpoint = `https://covid19.mathdro.id/api/countries/${country}`;
  }

  // no need to duplicate the API call or value-setting code
  // since we're using the dynamic endpoint value determined above
  $.get(endpoint, function(data) {
    $('#c_confirmed').html(data.confirmed.value);
    $('#c_recovered').html(data.recovered.value);
    $('#c_deaths').html(data.deaths.value);
  });
}


// when the select changes, get new data
$(document).on('change','.corona-select', function() {
  // get a string value from the <select>
  var country = $(this).val();
  
  // pass that string value to our reusable function
  showValuesForCountry(country);
});

// call this function when the page loads
// since 'total' is our default value, get that data immediately
showValuesForCountry('total');
<script src = "https://cdnjs.cloudflare.com/ajax/libs/jquery/2.2.2/jquery.min.js"></script>

<div class = "selectBox">
    <select class = "form-control corona-select" name = "city">
      <option value = "total">Total</option>
      <option value = "Kosovo">Kosovo</option>
      <option value = "Albania">Albania</option>
      <option value = "Afghanistan">Afghanistan</option>
      <option value = "Algeria">Algeria</option>
      <option value = "Andorra">Andorra</option>
      <option value = "Argentina">Argentina</option>
      <option value = "Armenia">Armenia</option>
      <option value = "Australia">Australia</option>
      <option value = "Austria">Austria</option>
      <option value = "Azerbaijan">Azerbaijan</option>
      <option value = "Bahrain">Bahrain</option>
      <option value = "Bangladesh">Bangladesh</option>
      <option value = "Belarus">Belarus</option>
      <option value = "Belgium">Belgium</option>
      <option value = "Bhutan">Bhutan</option>
      <option value = "Bolivia">Bolivia</option>
      <option value = "Bosnia and Herzegovina">Bosnia and Herzegovina</option>
      <option value = "Brazil">Brazil</option>
      <option value = "Brunei">Brunei</option>
      <option value = "Bulgaria">Bulgaria</option>
      <option value = "Burkina Faso">Burkina Faso</option>
      <option value = "Cambodia">Cambodia</option>
      <option value = "Cameroon">Cameroon</option>
      <option value = "Canada">Canada</option>
      <option value = "Chile">Chile</option>
      <option value = "China">China</option>
      <option value = "Colombia">Colombia</option>
      <option value = "Congo (Kinshasa)">Congo (Kinshasa)</option>
      <option value = "Costa Rica">Costa Rica</option>
      <option value = "Cote d'Ivoire">Cote d'Ivoire</option>
      <option value = "Croatia">Croatia</option>
      <option value = "Cruise Ship">Cruise Ship</option>
      <option value = "Cuba">Cuba</option>
      <option value = "Cyprus">Cyprus</option>
      <option value = "Czechia">Czechia</option>
      <option value = "Denmark">Denmark</option>
      <option value = "Dominican Republic">Dominican Republic</option>
      <option value = "Ecuador">Ecuador</option>
      <option value = "Egypt">Egypt</option>
      <option value = "Estonia">Estonia</option>
      <option value = "Finland">Finland</option>
      <option value = "France">France</option>
      <option value = "French Guiana">French Guiana</option>
      <option value = "Georgia">Georgia</option>
      <option value = "Germany">Germany</option>
      <option value = "Greece">Greece</option>
      <option value = "Guyana">Guyana</option>
      <option value = "Holy See">Holy See</option>
      <option value = "Honduras">Honduras</option>
      <option value = "Hungary">Hungary</option>
      <option value = "Iceland">Iceland</option>
      <option value = "India">India</option>
      <option value = "Indonesia">Indonesia</option>
      <option value = "Iran">Iran</option>
      <option value = "Iraq">Iraq</option>
      <option value = "Ireland">Ireland</option>
      <option value = "Israel">Israel</option>
      <option value = "Italy">Italy</option>
      <option value = "Jamaica">Jamaica</option>
      <option value = "Japan">Japan</option>
      <option value = "Jordan">Jordan</option>
      <option value = "Korea, South">Korea, South</option>
      <option value = "Kuwait">Kuwait</option>
      <option value = "Latvia">Latvia</option>
      <option value = "Lebanon">Lebanon</option>
      <option value = "Liechtenstein">Liechtenstein</option>
      <option value = "Lithuania">Lithuania</option>
      <option value = "Luxembourg">Luxembourg</option>
      <option value = "Malaysia">Malaysia</option>
      <option value = "Maldives">Maldives</option>
      <option value = "Malta">Malta</option>
      <option value = "Martinique">Martinique</option>
      <option value = "Mexico">Mexico</option>
      <option value = "Moldova">Moldova</option>
      <option value = "Monaco">Monaco</option>
      <option value = "Mongolia">Mongolia</option>
      <option value = "me">Montenegro</option>
      <option value = "Morocco">Morocco</option>
      <option value = "Nepal">Nepal</option>
      <option value = "Netherlands">Netherlands</option>
      <option value = "New Zealand">New Zealand</option>
      <option value = "Nigeria">Nigeria</option>
      <option value = "North Macedonia">North Macedonia</option>
      <option value = "Norway">Norway</option>
      <option value = "Oman">Oman</option>
      <option value = "Pakistan">Pakistan</option>
      <option value = "Panama">Panama</option>
      <option value = "Paraguay">Paraguay</option>
      <option value = "Peru">Peru</option>
      <option value = "Philippines">Philippines</option>
      <option value = "Poland">Poland</option>
      <option value = "Portugal">Portugal</option>
      <option value = "Qatar">Qatar</option>
      <option value = "Reunion">Reunion</option>
      <option value = "Romania">Romania</option>
      <option value = "Russia">Russia</option>
      <option value = "San Marino">San Marino</option>
      <option value = "Saudi Arabia">Saudi Arabia</option>
      <option value = "Senegal">Senegal</option>
      <option value = "Serbia">Serbia</option>
      <option value = "Singapore">Singapore</option>
      <option value = "Slovakia">Slovakia</option>
      <option value = "Slovenia">Slovenia</option>
      <option value = "South Africa">South Africa</option>
      <option value = "Spain">Spain</option>
      <option value = "Sri Lanka">Sri Lanka</option>
      <option value = "Sweden">Sweden</option>
      <option value = "Switzerland">Switzerland</option>
      <option value = "Taiwan*">Taiwan*</option>
      <option value = "Thailand">Thailand</option>
      <option value = "Togo">Togo</option>
      <option value = "Tunisia">Tunisia</option>
      <option value = "Turkey">Turkey</option>
      <option value = "US">US</option>
      <option value = "Ukraine">Ukraine</option>
      <option value = "United Arab Emirates">United Arab Emirates</option>
      <option value = "United Kingdom">United Kingdom</option>
      <option value = "Vietnam">Vietnam</option>
    </select>
  </div>
</div>
<div class = "col-lg-3 col-md-3 col-12">
  <div class = "mapi-info">
    <p class = "title-mapi">Confirmed</p>
    <span class = "nr-mapi" id = "c_confirmed"></span>
  </div>
  <div class = "mapi red"></div>
</div>
<div class = "col-lg-3 col-md-3 col-12">
  <div class = "mapi-info">
    <p class = "title-mapi">Recovered</p>
    <span class = "nr-mapi" id = "c_recovered"></span>
  </div>
  <div class = "mapi green"></div>
</div>
<div class = "col-lg-3 col-md-3 col-12">
  <div class = "mapi-info">
    <p class = "title-mapi">Deaths</p>
    <span class = "nr-mapi" id = "c_deaths"></span>
  </div>
  <div class = "mapi gray"></div>
</div>

он очень полный, но Pajtim научился бы быстрее, если бы вы указали, что делать, вместо того, чтобы переписывать код в соответствии с вашими (очень хорошими) стандартами.

J nui 10.12.2020 22:23

Еще раз, спасибо! Есть ли способ сделать числа с «12 123,12»

Pajtim 10.12.2020 23:48

Да! То, что вы ищете, это .toLocaleString()

simmer 11.12.2020 18:57
  function getCityConfirmed(city){
  $.get( "https://covid19.mathdro.id/api/countries/" + city, function( data ) {
      $('#c_confirmed').html(data.confirmed.value);
  })
}
    $(document).on('change','.corona-select', function() {
  var city = $(this).val();
  console.info(city);
  if (city == 'Kosovo') {
    console.info('yes');
    $('#c_confirmed').html(getCityConfirmed("Kosovo"));
    $('#c_recovered').html();
    $('#c_deaths').html();
  }
  else if (city == 'total') {
    $('#c_confirmed').html();
    $('#c_recovered').html();
    $('#c_deaths').html();
  }
  else {
    $.get( "https://covid19.mathdro.id/api/countries/" + city, function( data ) {
      $('#c_confirmed').html(data.confirmed.value);
      $('#c_recovered').html(data.recovered.value);
      $('#c_deaths').html(data.deaths.value);
    });
  }
});

Это не исправляет проблемы OP и усложняет код.

simmer 10.12.2020 22:13

Другие вопросы по теме