<div class="pagination">
<a href="#">1</a>
<a href="#">2</a>
3
<a href="#">4</a>
</div>
我需要使用jQuery围绕数字“3”包装HTML元素。我无法修改HTML,因为它是动态生成的。
答案 0 :(得分:12)
我有一个similar question包裹所有流浪文本
$(function() {
var test = $('.pagination')
.contents()
.filter(function() {
return this.nodeType === 3 && $.trim(this.nodeValue) !== '';
})
.wrap('<span/>');
});
与wrap()
和wrapAll()
轻微混淆。 here's a demo
答案 1 :(得分:5)
这将用span填充你的所有数字,所以结构将是:
<a><span>1</span></a>
并且所选择的仅跨越而不是:
<span>2</span>
var html = $('.pagination').html();
html = html.replace(/[0-9]/g,"<span>$&</span>");
$('.pagination').html(html);
所以你可以轻松地设置它的样式:
.pagination a span {normal style}
.pagination span{selected style}
答案 2 :(得分:1)
这是旧的,但在我看来,更简单,更简单的方法是:
class Program
{
private static Alert MainAlert = new Alert();
private static PrimaryDBContext db = new PrimaryDBContext();
static void Main(string[] args)
{
MainAlert = AlertObjectFactory.GetAlertObject();
db.Alerts.Add(MainAlert);
db.SaveChanges();
}
}