2017-11-19 6 views
0

JSONクエリ文字列に変数を渡す方法:私は、次のコードを作成し、今度は、その都市の温度が表示されますされ、ドロップダウンから都市名を渡すまし

<script src="//cdnjs.cloudflare.com/ajax/libs/jquery/2.1.3/jquery.min.js"></script> 
<script> 


     $(document).ready(function() { 
      document.getElementById('cityName').value; 
     // localStorage.setItem('City_Name', city); 

      //------------------------- 
      var searchtext = "select item.condition from weather.forecast where woeid in (select woeid from geo.places(1) where text='" + city + "') and u='c'" 
      //change city variable dynamically as required 
      $.getJSON("https://query.yahooapis.com/v1/public/yql?q=" + searchtext + "&format=json").success(function (data) { 
       console.log(data); 
       $('#temp').html("Temperature in " + city + " is " + data.query.results.channel.item.condition.temp + "°C"); 
       // localStorage.setItem('tempr', data.query.results.channel.item.condition.temp); 
      //------------------------- 

      }); 
     }); 

</script> 

Iをコードに都市名を手動で入力しても動作しますが、変数の値を渡すと失敗します。

答えて

0

私はそれがあなたのために働くことを願っています。 私はそれを試してみましたが、その仕事を

サンプル出力

はムンバイの

温度は慎重にこの行を見27°C

ある あなたは都市名を取るが、あなたはそれを定義していませんでした"var"を含む

var city = document.getElementById( 'cityName')。value;

$(document).ready(function() { 
    var city = document.getElementById('cityName').value; 
    // localStorage.setItem('City_Name', city); 

    //------------------------- 
    var searchtext = "select item.condition from weather.forecast where woeid in (select woeid from geo.places(1) where text='"+city+"') and u='c'"; 
    //change city variable dynamically as required 
    //https://query.yahooapis.com/v1/public/yql?q=select item.condition from weather.forecast where woeid in (select woeid from geo.places(1) where text='New York') and u='c'&format=json 
    $.getJSON("https://query.yahooapis.com/v1/public/yql?q=" + searchtext + "&format=json").success(function (data) { 
     console.log(data); 
     $('#temp').html("Temperature in " + city + " is " + data.query.results.channel.item.condition.temp + "°C"); 
     // localStorage.setItem('tempr', data.query.results.channel.item.condition.temp); 
     //------------------------- 

    }); 
}); 
関連する問題