可以用javascript判断,也很有必要在服务端接受提交信息的时候再判断一次

解决方案 »

  1.   

    function check(str) { 
    var i ;
    for(i=0; i<str.length; i++) {
         alert(str.charCodeAt(i));
    if((str.charCodeAt(i) < 91 && str.charCodeAt(i) > 64) || 
       (str.charCodeAt(i) < 123 && str.charCodeAt(i) > 96)){
    return true; 
    }
    return false;
    }
      

  2.   

    Java中类似charCodeAt()方法的是哪一个啊!
      

  3.   

    czcui1979(WAS害人)的方法应该可行,针对没一个字符,判断ascii码是不是那些区域里面
      

  4.   

    如下是一个例子,实现一个后调用m_textField.setDocument(new FloatDoc());private class FloatDoc extends PlainDocument{
        public void insertString(int offs, String str, AttributeSet a) throws BadLocationException {
          double value =0;
          boolean error  = false;
                   //限制输入只允许为double
          try{
            String name = getText(0,offs)+str+getText(offs,getLength()-offs);
            value = Double.parseDouble(name);
          }
          catch(Exception e) {
            error = true;
          }
          if(error) {
            Toolkit.getDefaultToolkit().beep();
            return;
          }
          super.insertString(offs,str,a);
        }
      }
      

  5.   

    想用正则表达式过滤用户输入的字符
    条件: 只允许录入 a - z A -Z 0-9 这些字符(这和全角/半角有关系吗?)
      

  6.   

    if(!Pattern.matches("[a-zA-Z][A-Za-z0-9]+", loginName))
        throw new CheckException("登录名称必须由0-9z-Z的字符组成,并且首字母必须是a-Z的字母");
      

  7.   

    我认为呢!!
    你用强制转换的方法来试试,
    但这个方法必须要用try catch的方法捕捉,正确就继续执行,错误你就报错:)!