无法将 javascript 附加到我的 html

Having trouble appending javascript into my html

好的,所以我正在尝试从 api 中提取一些数据。我 运行 遇到的问题是我能够找到我正在寻找的信息,但是我无法从控制台获取该信息并进入我的主 index.html 页面。

这是我的 JS 代码

var form = $('#search');
var input = $('#search-keyword');
var results = $('#results');

$(document).ready(function() {
  $("#myBtn").on('click', function() {
    var symbol = $("#search-keyword").val();
    $.getJSON("http://dev.markitondemand.com/Api/v2/quote/jsonp?symbol=" + symbol + "&callback=?", function(info) {
        console.log(info);
    });
  });
});

这是我的 html 代码

<div id="search">
  <h1>API Test</h1>
  <input type="search" id="search-keyword">
  <button id="myBtn">Try it</button>
</div>
<div id="results"></div>

通过这样做,我几乎可以得到我想要的东西。但是我无法将数据从控制台获取到实际页面。

我试过appendChild

var bob = document.getElementById(results);
var content = document.createTextNode(info);
bob.appendChild(info);

我试过 innerHTML

var theDiv = document.getElementById(results);
theDiv.innerHTML += info; 

..我试过.append()

$('#myBtn').click(function() {
  $(results).append(info) 
})

我没主意了。我意识到我可能在其他地方有一个我没有看到的小问题,这可能是问题的根源。非常感谢任何可以帮助我解决这个问题的人。

"results" 需要用正则 javascript 引起来,对于 jquery,您已经对结果变量进行了贴标。

var theDiv = document.getElementById("results");
theDiv.innerHTML += info; 

$('#myBtn').click(function(){
  results.append(info) 
})

此外,由于您要在文档就绪调用之外声明结果,因此您必须确保 html 出现在 javascript.

之前
<script>
var form = $('#search');
var input = $('#search-keyword');
var results = $('#results');

$(document).ready(function() {
  $("#myBtn").on('click', function() {
    var symbol = $("#search-keyword").val();
    var resultedData = $.getJSON("http://dev.markitondemand.com/Api/v2/quote/jsonp?symbol=" + symbol + "&callback=?", function(info) {
        return info;
    });

    var resultDiv = document.getElementById("results");
    resultDiv.innerHTML += resultedData;
  });
});
</script>