我有这样的事情: ...
<div id="d120" >content</div>
<div id="d123" >content</div>
<div id="d112" >content</div>
<div id="d145" >content</div>
<div id="d134" >content</div>
//Insert here hello world
<div id="bla" >asd</div>
<div id="footer" >asd</div>
任何人都知道如何在所有id为d + number
的div之后插入html答案 0 :(得分:3)
如果格式在这些div之间没有任何内容,#bla
就像你的例子一样,这里使用.before()
是一种更安全的方法(因为div[id^=d]
也会匹配<div id="doodlesticks">
)。
$("#bla").before("<b>Hi There</b>");
更新:既然你说可以给他们一个课程,我会这样做,所以给内容div class="content"
并使用这个jQuery:
$(".content:last").after("<b>Hi There</b>");
答案 1 :(得分:3)
这将安全地测试id以数字结尾的元素,而不是任何以“d”开头的id。
$('div[id]').filter(function() {
return /\d+$/.test($(this).attr('id'));
}).last().after(...my html...);
答案 2 :(得分:1)
$("div[id^=d]:last").after("some html");
或:
$("some html").insertAfter("div[id^=d]:last");
答案 3 :(得分:0)
添加另一个带有id的div,然后只需更改该元素的html $('#id')。html('html');
除非那会破坏你的页面布局?
答案 4 :(得分:0)
试试这个:
$(function(){
$('div[id^="d"]:last').after('<div>Hello World</div>');
});
注意:正如Nick Craver建议的那样,这会匹配id
以d
开头的任何div,但我认为这是你必须根据你的html采用的标记。