我的JavaScript中的函数问题

时间:2017-08-10 13:13:12

标签: javascript jquery html

我正在尝试从一个非常基本的网页切换到anthor,但是当我点击getAll

时我会遇到一些问题

我以前的网页(wroking one)

<html>
<head>
    <script src="https://ajax.googleapis.com/ajax/libs/jquery/3.1.1/jquery.min.js"></script>
</head>
<body>
    <button onclick="getAll()"> Get All The Users </button>

    <div id="users"></div>

    <script>
        function getAll()

        {
            $("#users").html("");



            $.getJSON("http://localhost:8080/users",  function(data)
            {
                for (var i in data) {
                    $('#users').append("<p>ID: " + data[i].id + "</p>")
                    $('#users').append("<p>First name: " + data[i].fname + "</p>")
                    $('#users').append("<p>Last name: " + data[i].lname + "</p><br>")
                }
            }); 

        }

    </script>
</body>
</html>

这是错误:

Uncaught ReferenceError: getAll is not defined
    at HTMLButtonElement.onclick (testt.html:96)
onclick @ @ testt.html:96
testt.html:145 

Uncaught ReferenceError: screenfull is not defined
    at HTMLDivElement.<anonymous> (testt.html:145)
(anonymous) @ testt.html:145

EDITED 在Nina回答之后,我得到了理想的结果,但主页看起来像这样:

The result

所以它扭曲了我主页的上半部分。

2 个答案:

答案 0 :(得分:1)

您需要更改

<div id="requestfs">/div>

<div id="requestfs"></div>

你需要改变这一行

$.getJSON("http://localhost:8080/users" ,  function(data[i])
//                                                      ^^^

到(没有索引)

$.getJSON("http://localhost:8080/users" ,  function(data)

至少你需要在使用之前将库包含在某个地方。

<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>

可选您也可以使用type属性

<script type="text/javascript">

答案 1 :(得分:0)

声明功能时,{应与function关键字位于同一行。例如:

function foo() {

}

你应该改变所有这些(注意,它们在第110行和第20行)。

接下来,在行

$.getJSON("http://localhost:8080/users" ,  function(data[i]) {

function (data[i])应为function (data)

另外,请记住包含jquery库。