Javascript ajax不是函数类型错误

Javascript ajax不是函数类型错误,javascript,jquery,ajax,Javascript,Jquery,Ajax,我不确定我的代码为什么会出现错误。我做错了什么 <!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">

我不确定我的代码为什么会出现错误。我做错了什么

<!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>

$(文档).ready(函数(){
var logResp=$(“#食品卫生”);
logResp.ajax({
网址:“food hygiene.html”,
async:false,
键入:“获取”,
数据类型:“字符串”
}).完成(功能(数据){
警报(数据);
})
});
加载。。。

更新:正如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);
        }
    );
  • 您正在创建一个对象并试图将其用作
    ajax
    的前缀,这是错误的

  • 只添加一个jQuery库
    jQuery-3.2.1.min.js
    jQuery-3.1.1.slim.min.js

  • 将脚本代码放在页面上并检查。(或者你也可以把它留在那里)

  • 你可以这样做:-

    <!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>
    
    
    加载。。。
    $(文档).ready(函数(){
    var logResp=$(“#食品卫生”);
    logResp.ajax({
    网址:“food hygiene.html”,
    async:false,
    键入:“获取”,
    数据类型:“字符串”
    }).完成(功能(数据){
    警报(数据);
    })
    });
    
    我也有同样的问题

    只需替换:

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

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


    在script标记中,并将其添加到head tad

    中,jQuery文件似乎没有正确加载,我尝试了在没有另一个
    标记的情况下加载,代码没有抛出任何错误:

    另外,
    $(“#食品卫生”)
    没有方法
    ajax()
    put

    $(文档).ready(函数(){
    $.ajax({
    网址:“food hygiene.html”,
    async:false,
    键入:“获取”,
    数据类型:“字符串”
    }).完成(功能(数据){
    警报(数据);
    })
    });
    
    
    加载。。。
    
    代替
    logResp.ajax
    使用
    $.ajax
    代替
    logResp.ajax({
    do
    $.ajax({
    slim)jQuery的版本不包括
    $.ajax
    API。请使用添加在页面底部的完整版本,该版本覆盖以前加载的ibraryAh。谢谢。它解决了一个问题,但没有解决OP的问题。在说@BlindRoach.We all come之前,您可能需要检查代码是否确实解决了OP的问题在这里学习和分享我们的知识,我觉得整个向下投票系统都做得很糟糕。我想你应该指出,作为评论,答案不是几秒钟内草草写出来的,它已经足够好了,我想他会在抬头后编辑/删除。我的评论无意冒犯你,我只是认为e向下投票应该保留给无知的断章取义的答案,这些答案甚至不旨在解决眼前的问题。