2013-04-23 76 views
0

我想在页面加载时将HTML内容添加到div中。该HTML内容来自struts动作类变量。我测试过,我得到的HTML内容传递给结果jsp文件,但问题是,我不知道如何将它添加到struts action class变量的特定div中。jquery添加html内容到struts动作类变量的div

我要追加它topcontblock如下所示DIV:

<div class="main nobg"> 
<div class="topcontblock" id="contentBlock"> 
//my html content here 
</div> 
</div> 

我真的停留在此。任何帮助将不胜感激。

+2

如果您已经有HTML内容,为什么需要将javascript添加到div? – 2013-04-23 08:46:23

+1

你卡住了什么问题,你是如何解决的? – 2013-04-23 08:56:44

+0

问题是,HTML内容包含一些指令,如包含一些其他HTML页面,if-else语句等,我想在将内容附加到div后进行评估。如果看起来很简单,我很抱歉。我对这个框架很陌生。 – 2013-04-23 09:02:07

回答

0

正如评论所说,reading the documentation是要学会如何使用的最佳方法产品;)

您可以输出一个Struts2Action变量(其Getter提供)通过使用<s:property />标签:

<s:property value="yourVariableName"/> 

默认情况下,出于安全考虑,包含在一个变量HTML标签被转义(因此不计算),同时将其注入的页面。为了防止这种情况,您可以修改属性escapeHtml为false:

<s:property value="yourVariableName" escapeHtml="false" /> 

但是你应该停止了片刻,问自己如果Action变量是真的要注入的片段在正确的地方;最好在另一个JSP中定义它,并将其与<s:include />指令一起使用。

+0

嘿安德烈,谢谢你的回复。我已经尝试过,并得到解决。现在另一个问题是我有一些指令,比如在action类设置的变量的值中包含另一个jsp文件,即包含HTML内容的变量。是的,我知道动作类变量不会很好地存储HTML内容,但在我的情况下是需要的。由于我需要实现管理员可以从UI中更改特定页面内容的功能,因此修改的内容是存储在数据库中的。稍后,这些内容将从数据库中挑选出来并放入一个div中。 – 2013-04-23 11:53:05

+0

有关如何继续下去的任何建议? – 2013-04-23 11:53:31

+0

如果您已经解决问题,您应该将解决方案标记为已接受的答案,并开始提出新问题。顺便说一下,为了您的需要,您有没有想过所见即所得的编辑器,如CKEditor或TinyMCE? – 2013-04-23 12:16:46

0

可以使用简单的添加:

$("div#contentBlock").html("here you can put your HTML code"); 

,或者如果你有你的内容为对象

$("div#contentBlock").append($("<span>").addClass("your class"));