有个国家代码文本框,里面只能输入字母,所以我在文本框的keypress里面写了限制除了字母外,其余都禁止输入,效果达到了(除了字母,其余的字符都不能输入),但是,有个非常郁闷的问题被测试人员发现了,虽然不能输入但是可以粘贴汉字也保存成功,这该怎么办啊?我不希望在文本框失去焦点的时候校验,我希望除字母外的字符都不能粘贴进去,是不是在keypress里面啊?谢谢各位了

解决方案 »

  1.   

    你可以用onpaste事件处理,在这个事件里写你的处理函数,检测到汉字就过滤掉
      

  2.   


    屏蔽 Ctrl + V
     
    屏蔽 TextBox 右键菜单
      

  3.   

    用正则表达式吧!   [^\u4e00-\u9fa5]* (只支持英文字符)  估计这个你可以用上。
      

  4.   

    1:先在GetFocus()事件里保存临时值(不管怎么粘贴应该总需要将焦点设置在文本框里吧?没有用户无聊到自己的编               程去写个程序用代码粘上去吧。)
    2:在TextChanged事件里面加上判断,如果合法则通过,否则用临时值还原回去。
      

  5.   

    在textchange事件中定义,如果输入的字符不是字母强制输入退格键