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中,几个注释是如何工作的!)
提前谢谢
# 1 楼答案
使用
$('#result').html(data);
时#result
的内容将替换为新数据。 要将新数据附加到result
,请使用# 2 楼答案
关于堆栈溢出的每个注释都会有某种关联的ID(可能来自存储所有堆栈溢出数据的数据库,它是唯一的,我猜它会以某种方式用作元素ID)
最终,如果你有一个完整的评论系统,你可能会想从ajax调用中返回JSON。这个JSON可能看起来像这样:
然后你可以解析它并将其添加到你的页面中,使用“12345”作为包含元素的ID,或者其他什么
如果做不到这一点,暂时可以使用jQuerysdata()函数保存ID。这将针对jQuerys自己的缓存中的元素存储ID。这样,它就不需要是独一无二的
无论哪种方式,我确信非唯一元素ID将是它不显示的原因德尔>
更新
嗯,当然,卡斯滕是绝对正确的,但希望这篇文章中可能还有一些好信息给你!:)