首页 文章

jquery脚本没有在html中执行

提问于
浏览
0

我试图从Movie DB API检索信息,并且jquery代码似乎没有执行 . 我认为我的JSON代码可能已关闭,但在重要功能测试之后,我意识到它没有被运行 . 这是脚本:

<script type="text/javascript">
//test 0
$("#title").html('<h1>JS Loaded</h1>');
$(document).ready(function(){
  //test 1
  $("#title").html('<h1>Document Ready</h1>');
  var getPoster = function(){
    //test 2
    $("#title").html('<h1>Get poster Executed</h1>');
    $.getJSON(
    "http://api.themoviedb.org/3/discover/movie?with_cast=31&sort_by=popularity.desc&api_key=d34d1c194fd655e99cc15a631bad6760&page=1",
   function(data) {
     if (data != "Nothing found."){
       $('#poster').html('<img alt="Film/Show Poster" width="101px" height="150px" src=' + data.results[0].poster_path + ';>');
     } else {
       $('#title').html('<h1>NO POSTER WAS FOUND</h1>');
     }
    });
  }
  $('#poster').click(getPoster);
});

jQuery在头文件中声明,如下所示:

script src =“https://cdnjs.cloudflare.com/ajax/libs/jquery/3.2.1/jquery.min.js”integrity =“sha256-hwg4gsxgFZhOsEEamdOYGBf13FyQuiTwlAQgxVSNgt4 =”crossorigin =“anonymous”>

任何有关问题的见解都将非常感激 .

3 回答

  • 0

    在类似的情况下我遇到过这种情况,除了一个get和一个帖子 . 我最终只是换成了ajax电话 . 试试这个:

    $.ajax({
      dataType: "json",
      url: "http://api.themoviedb.org/3/discover/movie?with_cast=31&sort_by=popularity.desc&api_key=d34d1c194fd655e99cc15a631bad6760&page=1",
      success: (data) => {
    if (data != "Nothing found."){
           $('#poster').html('<img alt="Film/Show Poster" width="101px" height="150px" src=' + data.results[0].poster_path + ';>');
         } else {
           $('#title').html('<h1>NO POSTER WAS FOUND</h1>');
         }
    },
    });
    

    Don 't quote me on this, because it doesn't在文档中明确说明了这一点,但我认为 .getJSON() 调用具有作为第二个参数发送回的响应,而不是从 endpoints 获得的实际响应数据 .

  • 0

    在所有概率中,这只是与CORS相关的错误 .

    您的AJAX请求失败,因为请求的来源(由您的html文件中的JavaScript生成)和API服务器是“Cross Origin”(基本上是不同的域和/或端口),并且浏览器倾向于限制“资源共享”之间的“资源共享”为了安全起见 .

    如果您使用的是Chrome,请尝试添加类似CORS Toggler的扩展程序,启用它并重试 .

  • 0

    好的,我发现了问题,现在我觉得自己像个白痴 . 我的测试试图引用一个HTML ID而不是一个html类,所以我认为这是一个jquery问题 . 事实证明,我需要额外的网址部分来检索图像 . TMDb API现在运行正常,感谢您的帮助!

相关问题