我写了这样一类,将用户输入的单引号换成两个单引号public class mytextbox:TextBox
{
public override Text
{
get
{
return base.Text.Replace("'","''");
}
set
{
base.Text = value;
}
}
}问题是:
每次用户输入的单引号的数目改变提交之后,文本框中的单引号后成倍增加
我的意思是能否原封不动的显示用户输入的字符
{
public override Text
{
get
{
return base.Text.Replace("'","''");
}
set
{
base.Text = value;
}
}
}问题是:
每次用户输入的单引号的数目改变提交之后,文本框中的单引号后成倍增加
我的意思是能否原封不动的显示用户输入的字符
解决方案 »
- 工厂三层反射小问题
- Excel 转成 SqlServer 2005
- JS 中与正则表达示替换全文 问题!!!!!!!!
- 问个小问题!关于gridview
- 关于缓存的委托?
- ASP.NET2.0中根据IP来获取客户端的地理位置
- 唱衰全国最无能, 最下流, 最小人之项目经理edmund yau http://edmund.0fees.net
- 点击文件路径打开服务器中的文件,例如WORD,EXl,等等,但本地没有装Office
- Entity FrameWork5.0 视图问题
- 严重问题,新记录加不了!!!!!!快帮我啊~!!!!!!!!!!!!!!!!!
- 关于javascript调用Activex问题,各位高手请进,分不够再开一贴加分!在线等,急!!!!!!!!
- 关于用DataGrid上的按钮列删除数据时弹出提示的问题
base.Text.Replace("''''","''");
用参数形式的SQL语句,
另外,对TextBox的输入数据进行HtmlEncode就更好了
如果您要在应用程序中显示字符串,但不信任它们,则向它们应用 HTML 编码。例如,进行编码后,标记 <b> 将变成 <b>。如果您正在显示的字符串来自您尚未确定信任其内容的数据库时,您可能会这样做。
如果您希望应用程序接受某些 HTML(例如,来自用户的某些格式设置指令),请关闭自动检查,并创建筛选器来精确定义应用程序将接受哪些 HTML。
安全说明 决不要禁用自动请求验证而不添加您自己的检查或筛选器。
注意 不要创建试图只筛选出不可接受元素的筛选器,因为预料每个可能的错误输入十分困难。相反,如果您确实要创建筛选器,请创建具有可接受输入的已定义列表的筛选器。
为了防止 SQL 语句利用,决不使用字符串串联创建 SQL 查询。相反,使用参数化查询并将用户输入分配给参数对象。有关详细信息,请参见数据适配器命令中的参数。
有些语句比较简单,用参数形式执行,没有必要吧
虽然没有必要,但是却是好的习惯,参数和HtmlEncode都是应该用的你要继承TextBox创建自己的控件不还麻烦
不知道你要TextBox的Render和OnPreRrender想做什么,但帮你找了找,不一定正确
protected internal override void Render(HtmlTextWriter writer)
{
this.RenderBeginTag(writer);
if (this.TextMode == TextBoxMode.MultiLine)
{
HttpUtility.HtmlEncode(this.Text, writer);
}
this.RenderEndTag(writer);
}
protected internal override void OnPreRender(EventArgs e)
{
base.OnPreRender(e);
Page page1 = this.Page;
if ((page1 == null) || !base.IsEnabled)
{
return;
}
if (!this.SaveTextViewState)
{
page1.RegisterEnabledControl(this);
}
if (this.AutoPostBack)
{
page1.RegisterPostBackScript();
page1.RegisterFocusScript();
}
}
{
this.Page.RegisterStartupScript("","<script language=javascript>document.all('"+this.ClientID+
"').value=document.all('"+this.ClientID+"').value.replace(V_specialChar,'\\'')</script>");
}
base.OnPreRender (e);