查找历史雅虎财务报价

时间:2014-03-05 14:25:08

标签: javascript jquery json yql yahoo-finance

我有一个正常运作的jfiddle例子我只是想调整它但是,我很难过...... 对于这个问题,我有两个问题:http://jsfiddle.net/maxmillien/qPVSy/

第1部分有没有办法在每次新搜索完成后清除搜索? 示例:我的报价是“GOOG”和随机日期范围。但是,我想搜索另一个引用说“AAPL”是否有办法删除/删除以前的价格&以前搜索“GOOG”的日期。

第2部分有没有办法防止同一日期的双击? 示例:搜索过去两周...但点按两次按钮,您会看到相同的日期和时间。价格出现了。我想防止这种情况发生。

这是代码:

var yqlURL="http://query.yahooapis.com/v1/public/yql?q=";
var dataFormat="&format=json&env=store%3A%2F%2Fdatatables.org%2Falltableswithkeys";

$(function() { //Load jQueryUI DatePicker by class name
    $( ".datePick" ).datepicker({dateFormat: 'yy-mm-dd'} );
});

$("#submit").click(function() {
    var symbol = $("#txtSymbol").val();
    var startDate=$("#startDate").val();
    var endDate=$("#endDate").val();

    var realtimeQ = yqlURL+"select%20*%20from%20yahoo.finance.quotes%20where%20symbol%20in%20(%22" + symbol + "%22)%0A%09%09&"+ dataFormat;
    var historicalQ = yqlURL+"select%20*%20from%20yahoo.finance.historicaldata%20where%20symbol%20%3D%20%22"+ symbol +"%22%20and%20startDate%20%3D%20%22"+ startDate +"%22%20and%20endDate%20%3D%20%22"+ endDate +"%22"+ dataFormat;

    $(function() {
        $.getJSON(realtimeQ, function(json) {//YQL Request
            $('#symbol').text(json.query.results.quote.Name);//Assign quote.Param to span tag
            $('#bidRealtime').text(json.query.results.quote.BidRealtime);
        });
    });  
    $(function() {
        $.getJSON(historicalQ, function(json) {            
            $.each(json.query.results.quote, function(i, quote) {//loop results.quote object 
                $("#date").append('<span>' + quote.Date + '</span');//create span for each record
            });            
            $.each(json.query.results.quote, function(i, quote) { //new each statement is needed
                $("#closeValue").append('<span>' + quote.Close + '</span');
            });
        });
    });
});

1 个答案:

答案 0 :(得分:1)

第1部分)您可以附加$.click()来点击#inputSymbol框并使用.val('')清除文本。如果需要,可以将$.click()附加到x符号或其他内容。

第2部分)为防止双击,您可以在第一次单击后禁用该按钮,然后在输入字段后再次启用该按钮。 $("#submit").attr("disabled","disabled");然后$("#submit").removeAttr("disabled");

  

$("#txtSymbol").click(function() {         $("#txtSymbol").val(''); // part 1        this.enableSubmit; // part 2     });

     

var enableSubmit = function() {     $("#submit").removeAttr("disabled");    }

JSFiddle here