如何使用Ajax JQuery的响应更新html元素

时间:2019-03-21 22:18:11

标签: javascript jquery html ajax

我有一个运行有REST @POST端点的Java应用程序,该应用程序执行SQL查询,并以CSV格式返回结果。

端点正常工作,我可以通过Curl和Postman获得正确的结果。

现在,我正在尝试通过javascript调用此终结点,并使用响应更新HTML值。但是没有js经验。

这是我正在使用的代码:

<!DOCTYPE html>
<html>
<body>

<h1>Making A POST</h1>

<p id="demo">Change this text.</p>

<button type="button" onclick="loadDoc()">Change Content</button>

<script src="https://ajax.googleapis.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>
<script>
function loadDoc() {
     $.post("http://localhost:4567/query/sql/csv",
    "SELECT * FROM testTable",
    function(data,status){
      document.getElementById("demo").innerHTML = $result;
    });
}
</script>

</body>
</html>

它已成功发出POST请求,可以从应用程序控制台中看到。但这并没有通过响应更改HTML元素: <p id="demo">Change this text.</p>

2 个答案:

答案 0 :(得分:1)

如我所见,您正在使用一个未定义的var:$result 我认为您想改用data。 像这样:document.getElementById("demo").innerHTML = data;

答案 1 :(得分:0)

代码有效。 问题是Chrome和Internet Explorer阻止了脚本。