我有好多页面,有很多TextBox,如何过滤其中的非法字符,从而使当用户输入非法字符时不报错呢?

解决方案 »

  1.   

    何为非法字符,你在keypress事件中过滤吧
      

  2.   

    什么是keypress事件,不懂。非法字符如:' < 等。我用  str = str.Replace("<", "ssssssfff");方法,只要〈出现在最后才有用,在前面或在中间都会出错!
      

  3.   

    用if(textbox1.text.equals(非法字符))来判断也行
    如果有,就。
    else,就。
      

  4.   

    asp是这样写的,谁能把它改成c#?
    Function OnlySaveText(strContent)
    dim re
    Set re=new RegExp
    re.IgnoreCase =true
    re.Global=True
    re.Pattern="(\<.[^\<]*\>)"
    strContent=re.replace(strContent," ")
    re.Pattern="(\<\/[^\<]*\>)"
    strContent=re.replace(strContent," ")
    strContent=replace(strContent,"&nbsp;","")
    OnlySaveText=strContent
    set re=nothing
    End Function
      

  5.   

    用正则过滤,激发标签JS事件时,用正规过滤,再重新给值,或给出错误提示当然,别忘了,后台也要过滤一下,不然前台禁止了JS,就没有这个效果了
      

  6.   

    写一个公共过滤方法(用正则、用Replace方法都可以) 然后每次读取textBox时都调用该方法
      

  7.   

    jquery封装的valiateenginer挺好用的,可以试试,效果也挺好的
      

  8.   

    理解错了。。
    要不把aspx的validate="false" 安全验证去掉?然后在后台对用户输入的值进行
    <%@ Page Language="C#" AutoEventWireup="true" ValidateRequest="true"  CodeBehind="Default.aspx.cs" Inherits="WebApplication2._Default" %>
      

  9.   

    ValidateRequest="true"  改成fasle试试