有 Java 编程相关的问题?

你可以在下面搜索框中键入要查询的问题!

java如何通过ajax成功函数附加无限数量的html元素?

我想用注释形式给出的数据附加无限数量的HTML元素。这是我的ajax:

function ajaxsubmit(){
    $.ajax({
        url: "/update",
        type: "POST",
        dataType: "html"
    }).success(function(data) {
          $('#result').html(data);
      });
    }

还有我的HTML部分:

<div class="post" id="result"></div>

这是我的服务器端功能:

public static Result ajaxupdate(){
    String done = "test";
    return ok(done).as("text/html");
}

此函数只追加一次,如果我第二次单击,则不会追加。是因为我每次都应该有不同的ID吗?这怎么可能(比如在stackoverflow中,几个注释是如何工作的!)

提前谢谢


共 (2) 个答案

  1. # 1 楼答案

    使用$('#result').html(data);#result的内容将替换为新数据。 要将新数据附加到result,请使用

    $('#result').append(data);
    
  2. # 2 楼答案

    关于堆栈溢出的每个注释都会有某种关联的ID(可能来自存储所有堆栈溢出数据的数据库,它是唯一的,我猜它会以某种方式用作元素ID)

    最终,如果你有一个完整的评论系统,你可能会想从ajax调用中返回JSON。这个JSON可能看起来像这样:

    {"id":"12345","text":"Text for the comment","user":"Andy"}

    然后你可以解析它并将其添加到你的页面中,使用“12345”作为包含元素的ID,或者其他什么

    如果做不到这一点,暂时可以使用jQuerysdata()函数保存ID。这将针对jQuerys自己的缓存中的元素存储ID。这样,它就不需要是独一无二的

    无论哪种方式,我确信非唯一元素ID将是它不显示的原因

    更新

    嗯,当然,卡斯滕是绝对正确的,但希望这篇文章中可能还有一些好信息给你!:)