0

私は JavaScript と jquery を初めて使用します...天気 API を使用して現在の気温を警告する簡単なコードを作成しようとしています。

ここに私がこれまでに持っているものがあります:

 <script src="http://code.jquery.com/jquery-1.9.1.js"/>

 <script>
 var my_city="Washington,USA";
 var my_key="8b0642a6c7133932132002";
 var no_of_days=2;
 // build URI:
 var uri="http://free.worldweatheronline.com/feed/weather.ashx?               q="+my_city+"&key="+my_key+"&format=json&no_of_days="+no_of_days+"&includeLocation=yes";
 // uri-encode it to prevent errors :
 uri=encodeURI(uri); 

 jQuery.get(uri,function(r){
 current_temp_C  =r.data.current_condition[0].temp_C;
 alert(current_temp_C);
 },"json");
 </script>

ただし、何も表示されません。誰かが私が間違っている場所を指摘できる場合は、教えてください! ありがとう!

4

1 に答える 1

2

エラーハンドラーで終了していると思いますが、コード内で成功した ajax 呼び出しのみを処理しています。jquery > 1.5 を使用しているため、次のようにして確認できます。

jQuery.get(uri,function(r){
    current_temp_C  =r.data.current_condition[0].temp_C;
     alert(current_temp_C);
},"json").fail(function(jqXHR, ajaxOpts, thrownError){
    alert(thrownError);
});

また、コードによると、クエリ文字列には多くのスペースがあります。データをカスタム クエリ文字列として渡す代わりに、データを含むオブジェクト リテラルを 2 番目の引数として に追加します$.get

jQuery.get(uri, { key1: 'value1', key2: 'value2' }, function(r){
//etc...
于 2013-02-20T14:05:30.740 に答える