用另一个html内容替换html内容

时间:2014-06-19 16:03:07

标签: java regex struts2

我有一个jsp页面new.jsp,其中包含以下内容

<div class="parentClass">
   <ul>#myLinks</ul>
 </div>
 <a href="javaScript:void(0)" class="seeAll">More</a>

我必须用我在动作类中生成的另一个html替换#myLinks。我使用正确运行的htmlReader读取jsp页面的内容。但我尝试使用replaceAll函数替换我不需要的内容。myPage包含我的jsp页面的内容。 子链接内容如下

<li>abc</li>
<li>abc</li>
<li>abc</li>
<li>abc</li>

但即使使用此功能,replacedContent的输出也是相同的。

replacedContent = myPage.replaceAll("#myLinks", subLinks);

我需要最终输出为

<div class="parentClass">
   <ul>
      <li>abc</li>
      <li>abc</li>
      <li>abc</li>
      <li>abc</li>
  </ul>
 </div>
 <a href="javaScript:void(0)" class="seeAll">More</a>

有人可以帮我这个。谢谢提前.. :)

2 个答案:

答案 0 :(得分:0)

您可以使用不同的方法来执行此操作,但最简单的方法是在action类中使用一些属性或方法,该属性或方法返回包含生成的html的字符串。然后你可以直接把这个html写到外面。

<ul><s:property value="%{subLinks}" escapeHtml="false" /></ul>

当然你应该为subLinks属性提供一个getter。

答案 1 :(得分:-1)

您可以使用javascript执行此操作。 首先给sublink容器标签<ul id="test">

一些id

然后希望你把子链接作为字符串。比如sublinks =&#34; <li>abc</li><li>abc</li>...&#34;

现在在正文中写下以下javascript代码。

<script type="text/javascript"> document.getElementById('test').innerHTML = sublinks; </script>

那就是它。

希望这会对你有所帮助。