猿问

简单的搜索API

我很难理解如何从 html 搜索框获取搜索并将其输入到 JS 端的 api 链接中。我想要这样的东西工作


$.getJSON(`https://www.alphavantage.co/query?function=TIME_SERIES_DAILY&symbol=$(".stock-name")&apikey=APIKEY`, 

  function(data){

    console.log(data);


    var date = data["Meta Data"]["3. Last Refreshed"];


    var stock = data["Meta Data"]["2. Symbol"];

    var info = data["Meta Data"]["1. Information"];

    var open = data["Time Series (Daily)"][date]["1. open"];

    var close = data["Time Series (Daily)"][date]["4. close"];

    var high = data["Time Series (Daily)"][date]["2. high"];

    var low = data["Time Series (Daily)"][date]["3. low"];

    var vol = data["Time Series (Daily)"][date]["5. volume"];



    var difference = close-open;



    $(".Stock-Name").append(stock);

    $(".info").append(info);

    $(".stock-open").append(open);

    $(".stock-close").append(close);

    $(".difference").append(difference);

    $(".date").append(date);

    $(".high").append(high);

    $(".low").append(low);

    $(".vol").append(vol);


    if(difference < 0){

      $(".stock").css("background-color", "red");

    }

    else{

      $(".stock").css("background-color", "green");


    }




  }

);


其中 url 中的 symbol=$(".stock-name") 是用户在前端输入的股票名称,它将显示 api 中数组的信息。


莫回无
浏览 65回答 1
1回答

回首忆惘然

您可能想从您的问题中删除您的 API 密钥。您没有正确地将股票字符串添加到 URL 中。以下是如何执行此操作的示例(API 密钥设置为“test”,这似乎仍然有效)$('#stock-search').click(function(){&nbsp; var searchValue = $('#stock-name').val();&nbsp; $.getJSON(`https://www.alphavantage.co/query?function=TIME_SERIES_DAILY&symbol=${searchValue}&apikey=test`, function(data){&nbsp; &nbsp; console.log(data);&nbsp; &nbsp; var stock = data["Meta Data"]["2. Symbol"];&nbsp; &nbsp; $('#searched_for').html(`Got data for ${stock}`);&nbsp; });});<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script><input id="stock-name" type="text" value="APO"/><br/><button id="stock-search">Search</button><br/><div id="searched_for"></div>
随时随地看视频慕课网APP

相关分类

Html5
我要回答