2017-09-04 8 views
1

私のウェブサイトに財務データを組み込むことを試みています ローカルマシンからのクエリにいくつかのJavaスクリプトを使用したyoutubeドキュメンタリーをたどりましたサーバー。JavaスクリプトによるYQLファイナンスデータが毎回すべてのクエリを返すことはありません

スクリプトは、毎日の価格変更を4種類の共有に戻して表示することになっていました。

最初はうまくいっていたようですが、価格の一部しか戻ってこないことがわかりました。リフレッシュすると、異なる変更が表示される可能性がありますが、同時に4つのことはありませんか?ここ

はHTMLとJavascript

<script type="text/javascript"> 
var Base_URL = 'https://query.yahooapis.com/v1/public/yql?q='; 
var yql_query = 'select * from yahoo.finance.quote where symbol in ("YHOO","AAPL","GOOG","MSFT")'; 
var yql_query_str = encodeURI(Base_URL+yql_query); 
var query_str_final = yql_query_str + '&format=json&diagnostics=true&env=store%3A%2F%2Fdatatables.org%2Falltableswithkeys'; 

$.getJSON(query_str_final, function(data){ console.log(data); 
var changeValue = data.query.results.quote[0].Change; 
console.log(changeValue); 
document.getElementById("change").innerHTML = " Yahoo = " + changeValue; }); 

$.getJSON(query_str_final, function(data){ console.log(data); 
var changeValue = data.query.results.quote[1].Change; 
console.log(changeValue); 
document.getElementById("change1").innerHTML = " Apple = " + changeValue; }); 

$.getJSON(query_str_final, function(data){ console.log(data); 
var changeValue = data.query.results.quote[2].Change; 
console.log(changeValue); 
document.getElementById("change2").innerHTML = " Google = " + changeValue; }); 

$.getJSON(query_str_final, function(data){ console.log(data); 
var changeValue = data.query.results.quote[3].Change; 
console.log(changeValue); 
document.getElementById("change3").innerHTML = " Microsoft = " + changeValue; }); 

</script> 

任意の考えですか?

+0

返される正しいデータを示すすべてのconsole.logがありますか? –

+0

私はそうではないと同時にすべてを考える。名前を変更したYahooを除いて – Brendan

答えて

0

changeValueつまりそれぞれ1,2,3 etcの変数名が若干異なり、プロセスが完了したときにhtmlの変更が行われたようなものを試してみてください。

$.getJSON(query_str_final, function(data){ console.log(data); 
changeValue1 = data.query.results.quote[1].Change; 
console.log(changeValue); 
}).done(function(){ 
    document.getElementById("change1").innerHTML = " Apple = " + 
changeValue1;}); 

注:これにより、グローバル変数changValue1がグローバルになりますが、これはテストでは最適ではありません。

関連する問題