javascript - 刷新 append 元素而不重新加载整个页面

标签 javascript jquery json append

我从 json 文件中随机获取动物,并将字母拆分为一个范围,然后将其 append 到 .wrapper div。

但是当我重新加载 json 时,新的动物会 append 到那里,而旧的动物不会消失。

如何使用 html() 方法分割字母,或者如何在不刷新整个页面的情况下重新加载特定的 div?

单击刷新按钮,您会看到新的动物名称 append 到 div 中(正如我们所期望的那样)。 我只是在寻找是否使用 append() 方法的解决方案。

<强> JSFIDDLE

function loadJson() {

  $.getJSON('https://raw.githubusercontent.com/boennemann/animals/master/words.json', function(data) {

    var s = data[Math.floor((Math.random() * data.length))];

    for (i = 0; i < s.length; i++) {

      var $span = $("<span>", {
        class: " letter" + i
      }).appendTo(".wrapper");;
      $span.append(s[i]);
    }
  });

}

loadJson();

$("button").click(function() {
  loadJson();
});

最佳答案

在追加之前使用 $('.classname').empty() 。 https://jsfiddle.net/9wsjf90r/1/

function loadJson() {

  $.getJSON('https://raw.githubusercontent.com/boennemann/animals/master/words.json', function(data) {

    var s = data[Math.floor((Math.random() * data.length))];
$('.wrapper').empty();
    for (i = 0; i < s.length; i++) {

      var $span = $("<span>", {
        class: " letter" + i
      }).appendTo(".wrapper");;

      $span.append(s[i]);
    }
  });

}

loadJson();

$("button").click(function() {
  loadJson();
});

关于javascript - 刷新 append 元素而不重新加载整个页面,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39722322/

相关文章:

javascript - 将函数名称定义为动态

javascript - 如果 Angular 中存在任何形式错误,如何显示 div 标签?

javascript - jquery追加和javascriptappendChild不适用于html标签期间

javascript - HTML5文件读写同步

javascript - jquery自动完成json值

javascript - 使用jquery加载json数据后使用它

java - 应用程序配置文件

javascript - 将 div html 替换为该属性

jquery - 使用 Jquery 动态创建按钮

jquery - 在我的示例中从 jquery find() 获取未定义