我想讓jQuery自動完成,雅虎財務和Zend框架一起工作。jQuery自動完成和雅虎財務
我想要的是創建一個表單域,我可以通過Yahoo API自動完成代碼符號。
我已經創建了一個包含這一個Zend_From元素:
$this->setJQueryParam('source', new Zend_Json_Expr('function(request, response) {
$.ajax({
type: "GET",
dataType: "jsonp",
jsonp: "callback",
jsonpCallback: "YAHOO.Finance.SymbolSuggest.ssCallback",
data: {
query: request.term
},
cache: true,
url: "http://autoc.finance.yahoo.com/autoc";
}
});
}'));
$this->getView()->jQuery()->addJavascript('var YAHOO={Finance:{SymbolSuggest:{}}};');
$this->getView()->jQuery()->addOnLoad('YAHOO.Finance.SymbolSuggest.ssCallback = function (data) {
console.log(JSON.stringify(data)); }');
我發現this post是解決我的問題的一部分,但我覺得用var YAHOO={Finance:{SymbolSuggest:{}}};
是一個骯髒的把戲,是不正確的做法去做。
現在,如果我在字段中鍵入GOO,然後Firebug控制檯會告訴我這樣的事情:
{ 「的ResultSet」:{ 「查詢」: 「咕」, 「結果」: {「symbol」:「GOOG」,「name」:「Google Inc。」,「exch」:「NMS」,「type」:「S」,「exchDisp」:「NASDAQ」,「typeDisp」 },{「symbol」:「GT」,「name」:「固特異輪胎&橡膠公司」,「exch」:「NYQ」,「type」:「S」,「exchDisp」:「NYSE」,「typeDisp 「:」股權「} ...
這是偉大的,但我不知道如何發送回這些數據自動完成從這個回調函數,任何想法?
以下是快速嘗試雅虎財務查詢api的好方法:http://d.yimg.com/autoc.finance.yahoo.com/autoc?query=GOO&callback=YAHOO.Finance.SymbolSuggest.ssCallback – Liyali 2012-02-08 10:57:20
請注意,autoc.finance.yahoo.com提供的這種自動完成功能不是真正的API--它是其網站的內部雅虎功能。你當然可以使用它開發和構建應用程序,但我不會試圖用它構建任何真實的東西,或者你可能會違揹他們的服務條款。 – BrianC 2012-02-08 23:13:50
感謝您的評論,我實際上正在開發一個虛擬投資組合經理。 – Liyali 2012-02-09 06:49:26