2016-10-13 2 views
0

, поэтому я обманывал API-интерфейс Dark Sky Forecast, и я смог отобразить погоду своего местоположения на веб-странице. Однако я жестко закодировал долготу и широту, и я хотел еще раз остановиться на ней и позволить пользователю вводить свои собственные. Здесь он перестает работать.Использование полей для завершения вызова API (API прогноза темного неба)

Перед мой код был просто только

   <script src="http://ajax.googleapis.com/ajax/libs/jquery/1.5.1/jquery.min.js"></script> 
       <script> 
       //Waits until document is ready to run 
       jQuery(document).ready(function($) { 
        //Beginning of code 
        //Makes the request 
        $.ajax({ 
        url : "https://api.darksky.net/forecast/MyKey/1111,-1111+?exclude=minutely,hourly,daily,alerts,flags", 
        dataType : "jsonp", 
        success : function(parsed_json) { 
        var location = parsed_json['timezone']; 
        var temp_f = parsed_json['currently']['temperature']; 
        var complete = ("Current temperature in " + location + " is: " + temp_f); 
        $('#random').html("<h1>" + complete + "</h1>") 
        } 
        }); 
        } 
       }); 

       </script> 

        $('#search').click(getInfo); 
       }); 

       </script> 

И затем я создал несколько HTML-поля (я использовал самозагрузки только, чтобы держать вещи аккуратно), как этот

     <div class="input-group input-group-lg"> 
         <input id="long" type="text" class="form-control" placeholder="Longitude" aria-describedby="sizing-addon1"> 
        </div> 

        <div class="input-group input-group-lg"> 
         <input id="lat" type="text" class="form-control" placeholder="Latitude" aria-describedby="sizing-addon1"> 
        </div> 

        <div class="rand"> 
        <button class="btn btn-primary btn-lg" role="button" id="search">Find my location and temperature!</button> 
        </div> 

И я обновил свой сценарий, чтобы посмотреть например

     <script src="http://ajax.googleapis.com/ajax/libs/jquery/1.5.1/jquery.min.js"></script> 
       <script> 
       //Waits until document is ready to run 
       jQuery(document).ready(function($) { 
        //Beginning of code 

        var getInfo = function(){ 
         //Grabs the longitude and latitude 
         var Longitude = $('#long').val(); 
         var Latitude = $('#lat').val(); 
         //Makes the request 
         $.ajax({ 
         url : "https://api.darksky.net/forecast/mykey/" + Longitude + ","+ Latitude + "+?exclude=minutely,hourly,daily,alerts,flags", 
         dataType : "jsonp", 
         success : function(parsed_json) { 
         var location = parsed_json['timezone']; 
         var temp_f = parsed_json['currently']['temperature']; 
         var complete = ("Current temperature in " + location + " is: " + temp_f); 
         $('#random').html("<h1>" + complete + "</h1>") 
         } 
         }); 
        } 

        $('#search').click(getInfo); 
       }); 

Однако на данный момент это просто не работает. Я нажимаю кнопку, и ничего не происходит. Возможно, я сделал что-то не так в части HTML, потому что я едва внес какие-либо изменения в сценарий, поэтому я предполагаю, что это не проблема.

Большое вам спасибо!

ответ

-1

Nevermind, понял это. Я сделал все правильно, и я случайно положил знак плюса в url ... oops.

Смежные вопросы