注册 | 登录 忘记密码? 51cto首页 | 博客 | 论坛 | 招聘
热点文章 伤离别,痛英年早逝,愿天..
 帮助

原样呈现用户发言——避免HTML和Script解释


2005-05-13 18:03:00
 标签:html   [推送到技术圈]

写一个bbs,涉及到显示用户发言的问题。如何避免浏览器解释用户输入的html甚至script呢?



用到<pre/>标签,但是有个问题:pre内的内容不会自动换行。一行被弄的老长老长。显然不行。



忽然又想起老朋友<textarea/>。当初用过这个,但是关于尺寸的问题,没有得到好的解决。今天灵感来了——使用style属性来指定大小:

<textarea style="WIDTH: 100%; HEIGHT: 100%;" readonly="true">

<%# DataBinder.Eval(Container.DataItem, "内容") %>

</textarea>

但是这样还是有个问题,无法抵挡

</textarea>

<H1>一级标题</H1>

<textarea>



看来,只能够在服务器端动手了。tnnd,我要Server.HtmlEncode()了。最终,我在aspx页面内这样做,现在是罩了个铁布衫了哦。

<textarea style="WIDTH: 100%; HEIGHT: 100%;" readonly>

<%# Server.HtmlEncode(Convert.ToString(DataBinder.Eval(Container.DataItem, "内容"))) %>

</textarea>




    文章评论
 
2007-07-05 18:52:50
陈年老贴啊,我来顶一下。
<textarea>用来接受客户数据有很多问题,弄得我想尽办法。。

 

发表评论

昵   称:
验证码:  点击图片可刷新验证码  博客过2级,无需填写验证码
内   容: