css 获取简单GET请求的NS_BINDING_ABORTED错误

r6vfmomb  于 2022-11-26  发布在  其他
关注(0)|答案(4)|浏览(286)

为什么会出现此错误?
Here is a screenshot of my Network tab in Firefox showing the NS_BINDING_ABORTED
我看了一下这个线程在这里NS_BINDING_ABORTED Shown in Firefox with HttpFox,但我不知道它在说什么。
谁能帮帮我?
谢谢

$(function() {
  let userName = null;
  let userStatus  = null;

  $("#search").on("click", function() {
    userName = $("#username").val();
    apiCall();
  });
  
  $(".dropdown-menu a").on("click", function() {
    $("button.dropdown-toggle").text($(this).text());
    userStatus = $("button.dropdown-toggle").text();
  });

  function apiCall() {
    if (userName !== null && userStatus !== null) {
      var api = `https://api.jikan.moe/v3/user/${userName}/animelist/${userStatus}`;
      fetch(api, {
        method: "GET",
        headers: {
          Accept: "application/json",
        },
      })
      .then(response => response.json())
      .then((data) => {
        console.log(data)
      })
      .catch((error) => {
        console.log(error);
      })
    }
  }
});
nfeuvbwi

nfeuvbwi1#

我在一个$.get() AJAX 调用中遇到了同样的问题。它在一个从表单中的一个按钮触发的函数中。我把按钮移到表单标记之外,问题就消失了。

6psbrbz9

6psbrbz92#

您的#search元素是一个HTML提交按钮吗?与Marco S.的答案类似,我们在按钮位于表单内部时遇到了这个问题。将其移到表单标签之外是有效的。但是,我们发现Firefox不喜欢按钮位于表单内部时是type=“submit”。我们将按钮更改为:type=“button”并且它修复了这个问题....即使在表单标记内部也是如此。

omhiaaxx

omhiaaxx3#

如果按钮是表单中的提交按钮,则在onclick处理函数中,我们应该在发出任何获取请求或(apicall())之前放置event.preventDefault()

nwwlzxa7

nwwlzxa74#

对我来说,解决方案是将 click 事件绑定到<button>标记上,而不是<a>标记上,在<form>中。e.preventDefault()不是必需的。

相关问题