2013-10-30 47 views
0

我對JavaScript使用API​​以及如何調用網站和獲取信息的經驗不足。我之前在Java中使用HTTP對象和更多功能完成了此操作。我試圖提出一個應用程序,用戶可以輸入公司股票名稱,例如APPL,並獲取大量數據,如收益,損失,變化等。這應該不那麼難。我有一個html/javascript文件,其中包含股票名稱的輸入文本框。這部分很簡單。但是當我通過串聯將股票名稱粘貼到URL的末尾後,我不知道如何進行調用並獲取JSON信息。有些示例說明如何在我正在使用的網頁中以其他語言執行此操作,但不能用於JavaScript。我正在使用此鏈接作爲教程:調用一個網站並獲取JSON信息返回

http://digitalpbk.com/stock/google-finance-get-stock-quote-realtime 

這是我的JavaScript代碼到目前爲止:再次,這可能很簡單。任何幫助,將不勝感激,並很高興知道在未來。

script type="text/javascript"> 

var submitButton = document.getElementById("submitButton"); 
submitButton.addEventListener('click', actionPerformed, false); 

function actionPerformed(e) 
{ 

    var textValue = document.getElementById("stockTextBox").value; 
    var urlEncoded = "http://finance.google.com/finance/info?client=ig&q=NASDAQ:" + textValue.toString(); 


    for (var i = 0, len = urlEncoded.length; i < len; ++i) { 
    var object = urlEncoded[i]; 
    confirm(object.toString()); 
} 

} 


</script> 

我剛剛發現使用HTTP GET的以下代碼並試用了它,但是當我單擊提交按鈕時沒有任何反應。有什麼建議或怎麼回事?

function httpGet(theUrl) 
    { 
    var xmlHttp = null; 

    xmlHttp = new XMLHttpRequest(); 
    xmlHttp.open("GET", theUrl, false); 
    xmlHttp.send(null); 
    return xmlHttp.responseText; 
    } 

哇,這是我所預料的更多的工作。這裏是我在我的雅虎金融代碼中使用的URL字符串。我可以在瀏覽器中導航到它,它就像一個魅力。對於我的生活,我無法理解爲什麼這不起作用。

var urlEncoded = "http://www.finance.yahoo.com/webservice/v1/symbols/" + textValue.toString() + "/quote?format=json"; 
+0

你想要的是做出一個AJAX請求。 – teh1

+0

請您詳細說明一下嗎? – Tastybrownies

+0

當你確實找出AJAX請求時,你應該嘗試去你正在請求的URL並確保它的工作。 ;)(我從來沒有使用AJAX請求沒有某種包裝,所以我不能告訴你如何做到這一點) – teh1

回答

2

你可以嘗試jQuery,谷歌和下載它。 這是一個JavaScript框架,使事情變得更簡單。

$.get("http://yourur.com/file.php?parameter1=value1&parameter2=value2", function(data) { 
    //data now contains whatever it loaded from server 
    console.log("Loaded from server :", data); 
}, "json");