为了账号安全,请及时绑定邮箱和手机立即绑定

AJAX .done() 在 JSON 响应中返回未定义的 $.each()

AJAX .done() 在 JSON 响应中返回未定义的 $.each()

UYOU 2022-10-27 16:37:37
我无法从 $.ajax() 请求访问 JSON 结果。选择汽车型号后,我会从 api 获得结果,但我无法访问 JSON 响应以获取传播新下拉列表所需的信息。HTML<div class="row">    <div class="form-group col">           <label>Make</label>        <select class="custom-select" id="vMake">        <option selected="" disabled="">Choose Make</option>        <?php            require "config.php";             $sql = "SELECT * FROM tbl_cars";            $stmt = $pdo->prepare($sql);            $stmt->execute();            $cars = $stmt->fetchAll(PDO::FETCH_ASSOC);            foreach ($cars as $cars) {                echo "<option id='".$cars['make']."' value='".$cars['make']."'>".$cars['make']."</option>";            }        ?>        </select>       </div>    <div class="form-group">        <label>Model</label>        <select class="custom-select col" id="vModel">                    </select>    </div></div>JS$(document).ready(function(){    $('#vMake').on('change', function(){        var make = $(this).val();        var url = "https://vpic.nhtsa.dot.gov/api/vehicles/GetModelsForMake/" + make + "?format=json";        $.ajax({            url: url,            type: "GET",            dataType: "json",                            }).done(function(data){                                 $('#vModel').empty();                      $.each(data, function(i, e){                                              var model = data[i].Model_Name;                $('#vModel').append('<option value="' + model +'">'+ model + '</option>');             });                                   });    });})我正在尝试获取结果的模型名称。但如下图所示,我在第二个下拉列表中未定义。我怎样才能得到我需要的信息?
查看完整描述

1 回答

?
缥缈止盈

TA贡献2041条经验 获得超4个赞

首先,删除这个:

var data;

您已经data在该函数中调用了一个变量,因此如果该行正在执行任何操作,它将覆盖该变量并生成整个undefined. (如果它不这样做,它仍然完全是多余的,只会让你感到困惑。)

除此之外,从您的 JSON 看来,您想要循环的不是data,而是data.Results

$.each(data.Results, function(i, e){
  //...
  });


查看完整回答
反对 回复 2022-10-27
  • 1 回答
  • 0 关注
  • 93 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
微信客服

购课补贴
联系客服咨询优惠详情

帮助反馈 APP下载

慕课网APP
您的移动学习伙伴

公众号

扫描二维码
关注慕课网微信公众号