添加新内容的四个 jQuery 方法:
append() - 在被选元素的结尾插入内容
prepend() - 在被选元素的开头插入内容
after() - 在被选元素之后插入内容
before() - 在被选元素之前插入内容
jQuery append() 方法
jQuery append() 方法在被选元素的结尾插入内容。
实例:
$("p").append("Some appended text.")
jQuery prepend() 方法
jQuery prepend() 方法在被选元素的开头插入内容。
实例:
$("p").prepend("Some prepended text.")
通过 append() 和 prepend() 方法添加若干新元素
上面的例子中,我们只在被选元素的开头/结尾插入文本/HTML。
但是append() 和 prepend() 方法能够通过参数接收无限数量的新元素。可通过 jQuery 来生成文本/HTML或者通过 JavaScript 代码和 DOM 元素。
下面创建若干个新元通过 text/HTML、jQuery 或 JavaScript/DOM 来创建。通过 append() 方法把这些新元素追加到文本中(对 prepend() 同样有效):
实例:
function appendText()
{
var txt1="<p>Text.</p>" // 以 HTML 创建新元素
var txt2=$("<p></p>").text("Text.") // 以 jQuery 创建新元素
var txt3=document.createElement("p") // 以 DOM 创建新元素
txt3.innerHTML="Text."
$("p").append(txt1,txt2,txt3) // 追加新元素
}
jQuery after() 和 before() 方法
jQuery after() 方法在被选元素之后插入内容;jQuery before() 方法在被选元素之前插入内容。
实例:
$("img").after("Some text after")
$("img").before("Some text before")
通过 after() 和 before() 方法添加若干新元素
after() 和 before() 方法能够通过参数接收无限数量的新元素。可以通过 text/HTML、jQuery 或者 JavaScript/DOM 来创建新元素。
下面创建若干新元素通过 text/HTML、jQuery 或JavaScript/DOM 来创建。然后通过 after() 方法把这些新元素插到文本中(对 before() 同样有效):
实例:
function afterText()
{
var txt1="<b>I </b>" // 以 HTML 创建新元素
var txt2=$("<i></i>").text("love ") // 通过 jQuery 创建新元素
var txt3=document.createElement("big") // 通过 DOM 创建新元素
txt3.innerHTML="jQuery!"
$("img").after(txt1,txt2,txt3) // 在 img 之后插入新元素
}
参考资料:jQuery - 添加元素
你的这个分两种情况 1、你的新数据是累加在旧数据上的 2、你的新数据要覆盖原来的数据 两种类型都给你写一下吧,解决如下: <!DOCTYPE HTML><html><head><title>Page Title</title> </head><body> <!-- 点击累加数据的时候,原来的 1 和 2 等都不删除 --> <dl id="dl1"> <dd>1</dd> <dd>2</dd> <dt><a href="javascript:">累加数据</a></dt> </dl> <!-- 点击覆盖的时候,原来的所有数据要删除 --> <dl id="dl2"> <dd>1</dd> <dd>2</dd> <dt><a href="javascript:">新数据覆盖旧数据</a></dt> </dl></body></html><script src="http://ajax.googleapis.com/ajax/libs/jquery/1.4.2/jquery.min.js" type="text/javascript"></script><script type="text/javascript"> var i = 2 // 绑定两个点击方法$("#dl1 a").click(function() {AjaxGetData1() }) $("#dl2 a").click(function() {AjaxGetData2() }) // 模拟 ajax 获取数据,这里我就随便写了一个,用循环生成的了// 数据累加function AjaxGetData1() {var data = "<dd>" + (i + 1) + "</dd><dd>" + (i + 2) + "</dd>" i = i + 2 // 直接把 ajax 获取的数据,加到 id="dl1" 下的 dt 之前(before)$("#dl1 dt:eq(0)").before($(data)) } // 数据覆盖function AjaxGetData2() {var data = "<dd>" + (i + 1) + "</dd><dd>" + (i + 2) + "</dd>" i = i + 2 // 先删除 id="dl2" 下的所有 dd,然后再把新获取的 data 加到 id="dl2" 的 dt 之前$("#dl2 dd").remove() $("#dl2 dt:eq(0)").before($(data)) }</script>欢迎分享,转载请注明来源:内存溢出
评论列表(0条)