0

我正在尝试让 javascript 股票代码运行,它进展顺利,但我对 javascript 的了解处于初级水平。

当前代码(上例)使用谷歌金融 API 提取实时股票数据。它检查股票首字母缩写词并打印完整的公司名称,并具有一些不同的样式。

第二部分是尝试以表格格式显示数据,列工作,但我无法让 jquery 用实时日期填充最后一列:(。

我需要创建 3 列;1 代表股票名称,例如 (HAULOTTE),1 代表股票缩写,例如 (PIG),1 代表实时股票数字。这将确保每个股票数据行与其上方和下方的数据行保持平行。

附上当前的jsfiddle:

谢谢你的帮助。

https://jsfiddle.net/oqousaLw/

<div class="haul" data-symbol="PIG" data-title="HAULOTTE"></div>
<div class="ashtead" data-symbol="AHT" data-title="ASHTEAD"></div>
<div class="united" data-symbol="URI" data-title="UNITED RENTALS"></div>
<div class="terex" data-symbol="TEX" data-title="TEREX"></div>
<div class="cat" data-symbol="CAT" data-title="CATERPILLER"></div>
<div class="hees" data-symbol="HEES" data-title="H&E EQUIPMENT"></div>
<div class="pal" data-symbol="PAL" data-title="PALFINGER "></div>
<br>
    <br>
        <b>Replicate above code but in table format. cant get live data to appear</b>
        <br>
            <br>

        <div class="box">
<div class="floatleft2 " style="padding:5px;">
    <div>HAULOTTE</div>
    <div>ASHTEAD</div>
    <div>UNITED RENTALS</div>
    <div>TEREX</div>
</div>
<div class="stockSymbolnew" style="padding:5px;">
      <div><b>PIG</b></div>
      <div><b>AHT</b></div>
      <div><b>URI</b></div>
      <div><b>TEX</b></div>
</div>
<div class="floatleft2" style="padding:5px;">
    <div><i>GET live data</i></div>
      <div><i>GET live data</i></div>
      <div><i>GET live data</i></div>
      <div><i>GET live data</i></div>
</div>
</div>
4

1 回答 1

0

我已更新您的jsfiddle以使其按预期工作。

我所做的只是动态填充下面 div 中的值。

为 div 提供了 ID,以便我们可以附加值。

<div id="title" class="floatleft2 " style="padding:5px;">

</div>
<div id="symbols" class="stockSymbolnew" style="padding:5px;">

</div>
<div id="liveData" class="floatleft2" style="padding:5px;">

</div>

使用 jquery 附加值如下。

$("#title").append("<div>" + divContainer.data('title') + "</div>");
$("#symbols").append("<div><b>" + stockInfo1.t + "</b></div>");
$("#liveData").append("<div>" + stockChange + "</div>");

注意:项目的顺序会因请求而异,因为对 google Finance 的 get 调用是异步的

更新

我已经根据您的评论更新了答案。

请在此处找到更新的 jsfiddle 。为了固定记录的顺序,我们应该有适当的元素和一些标识符来为元素设置值。为此,请为显示实时数据的 div 提供 ID,如下所示。

<div class="floatleft2" style="padding:5px;">
      <div><i id="liveDataPIG"></i></div>
      <div><i id="liveDataAHT"></i></div>
      <div><i id="liveDataURI"></i></div>
      <div><i id="liveDataTEX"></i></div>
      <div><i id="liveDataCAT"></i></div>
      <div><i id="liveDataHEES"></i></div>
      <div><i id="liveDataPAL"></i></div>
</div>

并更新 js 以提供这样的值。

$("#liveData" + stockInfo1.t).html(stockPrice + stockChange);

如果您熟悉 jquery 选择器的工作原理,那么应该很容易理解。

如果没有,请参考https://api.jquery.com/category/selectors/basic-css-selectors/。这会给你一个基本的想法。其他选择器可以在https://api.jquery.com/category/selectors/找到。

于 2015-06-01T10:58:37.913 回答