这就是HTML代码的样子。我需要去掉br标签并包装段落标签中的行(即带有日期的行)。每个日期应该包装在自己的段落标签中。如何剥离<br>标签和包装线<p>和</p>标签?
<html>
<head><script src="http://code.jquery.com/jquery-latest.js"></script>
</head>
<body>
<h2>Other Events</h2>
<p>
<strong>Venue name</strong>
</p>
<div class="details">
<p>
Wednesday, May 11, 2011 <br>
Wednesday, June 08, 2011 <br>
Wednesday, July 13, 2011 <br>
Wednesday, August 10, 2011 <br>
Wednesday, September 14, 2011 <br>
Wednesday, October 12, 2011 <br>
Wednesday, November 09, 2011 <br>
19.00
<br>
</p>
</div>
</body>
</html>
我试过的jQuery的代码块,我在谷歌搜索后发现,但它只是不工作:
<script type="text/javascript" src="http://ajax.googleapis.com/ajax/libs/jquery/1.4.2/jquery.min.js"></script>
<script type="text/javascript">
$(document).ready(function() {
$('body').html($('body').html().replace(/<br>\*/g,"</p><p>"));
});
我也试过这个代码块,但不是用段落标记包裹日期,它在每行末尾放置空段落标记:
$(document).ready(function(){
$('.details p br').replaceWith('<p></p>');
});
这就是HTML输出的样子。正如你可以看到它没有正确包装带p标签的日期线:
<div class="details">
<p>
Wednesday, May 11, 2011 <p></p>
Wednesday, June 08, 2011 <p></p>
Wednesday, July 13, 2011 <p></p>
Wednesday, August 10, 2011 <p></p>
Wednesday, September 14, 2011 <p></p>
Wednesday, October 12, 2011 <p></p>
Wednesday, November 09, 2011 <p></p>
19.00
<p></p>
</p>
</div>
有没有人知道解决这个问题的方法?
我会写一个自定义的解析器解析巫行由行,然后无论它的需要追加有效的标签...:d – metaforce 2011-06-09 09:49:15