使用ajax在ul标签中追加结果

Append results in ul tag using ajax

本文关键字:追加 结果 标签 ul ajax 使用      更新时间:2023-09-26

这段代码在ul中追加了1个或多个li,但每次运行代码时,它都继续追加。我想用新数据替换第一次添加的数据。我尝试使用.empty,但如果数据有超过1个li标签,它只返回最后一个li,因为它清除第一次迭代。

function addCourse(){
                    $.post("addCourse", function(result){
                    var response = $.parseJSON(result);
                          $.each( response, function( i, val ) {
                                var day = JSON.stringify(val.day).replace(/'"/g, "");
                                var hour = JSON.stringify(val.hour).replace(/'"/g, "");
                                var date = day+"_"+hour;
                            $("#div1").append("<li><a data-toggle='tab' href=#"+date+">"+date+"</a></li>");
                           });
                });
            }

HTML代码

<ul class="nav nav-tabs" id="div1" role="tablist" >
      <li class="active" id="home">
          <a data-toggle="tab" href="#Home" >Home</a>
      </li>
</ul>

您尝试使用.empty,但可能在错误的地方。尝试在$.each之前使用它,例如:

function addCourse() {
  $.post("addCourse", function(result) {
    var response = $.parseJSON(result);
    $("#div1").empty();
    $.each(response, function(i, val) {
      var day = JSON.stringify(val.day).replace(/'"/g, "");
      var hour = JSON.stringify(val.hour).replace(/'"/g, "");
      var date = day + "_" + hour;
      $("#div1").append("<li><a data-toggle='tab' href=#" + date + ">" + date + "</a></li>");
    });
  });
}

try use .html()

$("#div1").html("<li><a data-toggle='tab' href=#"+date+">"+date+"</a></li>");

$("#div1").html('');$("#div1").append('...');