1
2
3
4
5
<pre>
if (xx >5) {
print "比5大!\n"
}
</pre>
浏览器显示效果:if (xx >5) {print "比5大!\n"}<textarea></textarea>之间包含有类似的这种转义字符的时候总会被解析,倒是可以把所有的"&"通过程序替换成"&",但是有些本来就是"&"的也会被转换,这就错了。如何让<textarea></textarea>之间包含的文本原封不动的显示出来呢?总结如下:解决方法有两种:第1种:
1
2
3
4
5
6
<body>
<textarea id='t' rows=20 cols=20></textarea>
<script>
document.getElementById('t').innerText='a<&>'
</script>
</body>
第2种:/*将字串转为html格式*/
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
public String strToHtml(String s)
{
if (s==null||s.equals("")) return ""
s = s.replaceAll("&", "&")
s = s.replaceAll("<", "<")
s = s.replaceAll(">", ">")
s = s.replaceAll(" ", " ")
// s = s.replaceAll("/n", "")
// s = s.replaceAll("'", "'")
return s
}
/*将html格式转为字串*/
public String strToHtml(String s)
{
if (s==null||s.equals("")) return ""
s = s.replaceAll("&","&")
s = s.replaceAll("<","<")
s = s.replaceAll(">",">")
s = s.replaceAll(" "," ")
//s = s.replaceAll("","/n")
//s = s.replaceAll("'","'")
return s
}
最后一点:jQuery的.html()方法默认会转义的,这种情况使用.text()就不会转义了。
使用ajax。
参考代码:
$(function(){
$.ajax({
type:"POST", url:"LoginLoadArticle.ashx",
data: "type="+escape("最新公告") ,
success:function(msg){
$(".gonggao").html(msg)
}, error:function(XMLHttpRequest, textStatus, thrownError){}})
})
扩展资料:
xml:返回XML文档,可用JQuery处理。
html:返回纯文本HTML信息;包含的script标签会在插入DOM时执行。
script:返回纯文本JavaScript代码。不会自动缓存结果。除非设置了cache参数。注意在远程请求时(不在同一个域下),所有post请求都将转为get请求。
json:返回JSON数据。
jsonp:JSONP格式。使用SONP形式调用函数时,例如myurl?callback=?,JQuery将自动替换后一个“?”为正确的函数名,以执行回调函数。
text:返回纯文本字符串。
beforeSend:要求为Function类型的参数,发送请求前可以修改XMLHttpRequest对象的函数。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)