簡體   English   中英

jQuery.ajax不是函數TypeError

[英]jQuery.ajax is not a function TypeError

我不確定為什么我的代碼出現錯誤。 我怎么了?

<!DOCTYPE html>
<html lang="en">
  <head>
    <!-- Required meta tags -->
    <meta charset="utf-8">
    <meta name="viewport" content="width=device-width, initial-scale=1, shrink-to-fit=no">
    <!-- Bootstrap CSS -->
    <link rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/bootstrap/4.0.0-alpha.6/css/bootstrap.min.css" integrity="sha384-rwoIResjU2yc3z8GV/NPeZWAv56rSmLldC3R/AZzGRnGxQQKnKkoFVhFQhNUwEyJ" crossorigin="anonymous">
<script src="https://code.jquery.com/jquery-3.2.1.min.js"></script>
    <script>
      $( document ).ready(function() {
        var logResp = $('#food-hygiene');

        logResp.ajax({
                        url: "food-hygiene.html",
                        async: false,
                        type: "GET",
                        dataType: "string"
                    }).done( function(data) {
                        alert(data);
                    })
      });
    </script>
  </head>
  <body>
    <div class="container-fluid">
      <div class="content-wrapper">
        <div id="food-hygiene">Loading...</div>
         </div>

        </div>
        <!-- jQuery first, then Tether, then Bootstrap JS. -->
        <script src="https://code.jquery.com/jquery-3.1.1.slim.min.js" integrity="sha384-A7FZj7v+d/sdmMqp/nOQwliLvUsJfDHW+k9Omg/a/EheAdgtzNs3hpfag6Ed950n" crossorigin="anonymous"></script>
        <script src="https://cdnjs.cloudflare.com/ajax/libs/tether/1.4.0/js/tether.min.js" integrity="sha384-DztdAPBWPRXSA/3eYEEUWrWCy7G5KFbe8fFjk5JAIxUYHKkDx6Qin1DkWx51bBrb" crossorigin="anonymous"></script>
        <script src="https://maxcdn.bootstrapcdn.com/bootstrap/4.0.0-alpha.6/js/bootstrap.min.js" integrity="sha384-vBWWzlZJ8ea9aCX4pEW3rVHjgjt7zpkNpZk+02D9phzyeVkE+jo0ieGizqPLForn" crossorigin="anonymous"></script>
      </body>
    </html>

更新:正如Satpal指出的那樣,有兩個對jQuery的引用。 較低的版本是不支持jQuery的苗條版本。

logResp它包含使用以下語句選擇的#food-hygiene元素的實例: $('#food-hygiene');

替換此代碼:

logResp.ajax({
                    url: "food-hygiene.html",
                    async: false,
                    type: "GET",
                    dataType: "string"
                }).done( function(data) {
                    alert(data);
                })

有了這個:

jQuery
    .ajax(
        {
            url: "food-hygiene.html",
            async: false,
            type: "GET",
            dataType: "string"
         }
    )
    .done(
        function(data) {
            alert(data);
        }
    );

我遇到過同樣的問題。

只需替換:

'SRC = “https://code.jquery.com/jquery-3.1.1.slim.min.js”'

'SRC = “https://code.jquery.com/jquery-3.1.1.min.js”'

在腳本標簽中並將其添加到頭部

看來jQuery文件未正確加載,我嘗試了沒有另一個<link>標記的情況,並且代碼未引發任何錯誤:

$('#food-hygiene')也沒有ajax() put $有的方法。

 $(document).ready(function() { $.ajax({ url: "food-hygiene.html", async: false, type: "GET", dataType: "string" }).done(function(data) { alert(data); }) }); 
 <script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script> <!DOCTYPE html> <html lang="en"> <head> <!-- Required meta tags --> <meta charset="utf-8"> <meta name="viewport" content="width=device-width, initial-scale=1, shrink-to-fit=no"> <!-- Bootstrap CSS --> <link rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/bootstrap/4.0.0-alpha.6/css/bootstrap.min.css" integrity="sha384-rwoIResjU2yc3z8GV/NPeZWAv56rSmLldC3R/AZzGRnGxQQKnKkoFVhFQhNUwEyJ" crossorigin="anonymous"> <!--<script src="https://code.jquery.com/jquery-3.2.1.min.js"></script>--> </head> <body> <div class="container-fluid"> <div class="content-wrapper"> <div id="food-hygiene">Loading...</div> </div> </div> <!-- jQuery first, then Tether, then Bootstrap JS. --> <!--<script src="https://code.jquery.com/jquery-3.1.1.slim.min.js" integrity="sha384-A7FZj7v+d/sdmMqp/nOQwliLvUsJfDHW+k9Omg/a/EheAdgtzNs3hpfag6Ed950n" crossorigin="anonymous"></script>--> <script src="https://cdnjs.cloudflare.com/ajax/libs/tether/1.4.0/js/tether.min.js" integrity="sha384-DztdAPBWPRXSA/3eYEEUWrWCy7G5KFbe8fFjk5JAIxUYHKkDx6Qin1DkWx51bBrb" crossorigin="anonymous"></script> <script src="https://maxcdn.bootstrapcdn.com/bootstrap/4.0.0-alpha.6/js/bootstrap.min.js" integrity="sha384-vBWWzlZJ8ea9aCX4pEW3rVHjgjt7zpkNpZk+02D9phzyeVkE+jo0ieGizqPLForn" crossorigin="anonymous"></script> </body> </html> 

  1. 您正在創建對象並嘗試將其用作ajax的前綴,這是錯誤的

  2. 僅添加一個jQuery庫jquery-3.2.1.min.jsjquery-3.1.1.slim.min.js

  3. 將腳本代碼放到頁面上並檢查。 (或者您也可以將其留在那里)

像下面這樣:

<!DOCTYPE html>
<html lang="en">
  <head>
    <!-- Required meta tags -->
    <meta charset="utf-8">
    <meta name="viewport" content="width=device-width, initial-scale=1, shrink-to-fit=no">
    <!-- Bootstrap CSS -->
    <link rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/bootstrap/4.0.0-alpha.6/css/bootstrap.min.css" integrity="sha384-rwoIResjU2yc3z8GV/NPeZWAv56rSmLldC3R/AZzGRnGxQQKnKkoFVhFQhNUwEyJ" crossorigin="anonymous">
<script src="https://code.jquery.com/jquery-3.2.1.min.js"></script>
  </head>
  <body>
    <div class="container-fluid">
      <div class="content-wrapper">
        <div id="food-hygiene">Loading...</div>
         </div>

        </div>
        <!-- jQuery first, then Tether, then Bootstrap JS. -->
        <script src="https://cdnjs.cloudflare.com/ajax/libs/tether/1.4.0/js/tether.min.js" integrity="sha384-DztdAPBWPRXSA/3eYEEUWrWCy7G5KFbe8fFjk5JAIxUYHKkDx6Qin1DkWx51bBrb" crossorigin="anonymous"></script>
        <script src="https://maxcdn.bootstrapcdn.com/bootstrap/4.0.0-alpha.6/js/bootstrap.min.js" integrity="sha384-vBWWzlZJ8ea9aCX4pEW3rVHjgjt7zpkNpZk+02D9phzyeVkE+jo0ieGizqPLForn" crossorigin="anonymous"></script>
         <script>
          $( document ).ready(function() {
            var logResp = $('#food-hygiene');

            logResp.ajax({
                            url: "food-hygiene.html",
                            async: false,
                            type: "GET",
                            dataType: "string"
                        }).done( function(data) {
                            alert(data);
                        })
          });
        </script>
      </body>
    </html>

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM