我正在尝试做的是在页面上显示一段javascript,而不是让它运行,只显示为人们要复制的代码片段.我加载谷歌的Prettify,然后在页面中我有这个代码:
<pre class="prettyprint">
<script>
$(document).ready(function(){
setTimeout(function(){
console.log('deleting cookie');
$.cookie('cookie',null,{domain: document.domain});
},1000);
});
</script>
</pre>
Run Code Online (Sandbox Code Playgroud)
但是这段代码只是执行而不显示JS片段.我在这里错过了什么?
我正在尝试在我的java类中编写几行html,从另一个API获取一些数据.我在JSON字符串中获取数据,然后想在网页上显示一些数据.
要创建HTML,我尝试:
StringBuilder sb = new StringBuilder();
for(int i=0;i<leads.size();i++){
sb.append("<p>Name: "+leads.get(i).getFirstName()+" "+leads.get(i).getLastName()+"</p>");
sb.append("<p>Email: "+leads.get(i).getEmail()+"</p>");
sb.append("<br />");
}
fullLeadData = sb.toString();
Run Code Online (Sandbox Code Playgroud)
但最终显示的是对html标签的字面解释.有没有办法可以创建这个字符串,以便标签保留为标签而不是转义字符?
java类是一个托管bean,所以在html中我有:
<body>
<div id="display">
#{PortalView.fullLeadData}
</div>
</body>
Run Code Online (Sandbox Code Playgroud)
其中fullLeadData是带有html的字符串.
我有一个数据表,我想根据对内容运行的一些分析来更改单元格的颜色.该表链接到一个Comment对象数组,我给出了一个String cssClass,它在运行分析后得到更新.这是我尝试插入数据表的rowClasses属性.它不起作用,我认为问题可能是我无法访问从数据表声明内部为数据表的每一行创建的变量.
数据代码:
<h:dataTable value="#{post.comments}" var="comment" class="hs-table" rowClasses="#{comment.cssClass}" >
<h:column>
#{comment.name}
</h:column>
<h:column>
#{comment.email}
</h:column>
<h:column>
#{comment.msg}
</h:column>
</h:dataTable>
Run Code Online (Sandbox Code Playgroud)
评论类:
public class Comment {
private String msg;
private String email;
private String name;
private Date date;
private String cssClass;
public Comment(){
cssClass = "normColumn";
}
epublic String getCssClass() {
return cssClass;
}
public void setCssClass(String cssClass) {
this.cssClass = cssClass;
}
Run Code Online (Sandbox Code Playgroud)
}
在托管bean中更新cssClass的位置:
if(tone>0)
c.setCssClass("commentPos");
else if(tone<0)
c.setCssClass("commentNeg");
Run Code Online (Sandbox Code Playgroud)
该课程永远不会被分配.我做错了什么,或者这根本不可能?