我做一个表单 里面有一个文本框
但是我想限定输入的文字长度
每当用户输入文字的时候
在文本框下方就自动的显示 已输入的文字个数当输入的文字个数超过限定数 就提示用户像这样的怎么做啊
各位高手帮帮 小弟啊
谢谢

解决方案 »

  1.   

    关于文本框的限定字符个数你可以去看一下aip
    你新建一个JTextField   textField   =   new   JTextField(20);
    好像这样的吧!!!     
      

  2.   

    用JavaScript的验证,然后alert
      

  3.   

    public class ExTextField extends JTextField { public ExTextField(int maxLen) {
    this.setDocument(new JTextFieldLimit(this, maxLen));
    }

    static class JTextFieldLimit extends PlainDocument {
        private int limit;
        // optional uppercase conversion
        private boolean toUppercase = false;
        
        private JTextField parent;
        public JTextFieldLimit(JTextField parent, int limit) {
            super();
            this.limit = limit;
            this.parent = parent;
        }
        
        JTextFieldLimit(int limit, boolean upper) {
            super();
            this.limit = limit;
            toUppercase = upper;
        }
        
        public void insertString
                (int offset, String  str, AttributeSet attr)
                throws BadLocationException {
            if (str == null) return;
            
            if ((getLength() + str.length()) <= limit) {
                if (toUppercase) str = str.toUpperCase();
                super.insertString(offset, str, attr);
            }
            else{
             JOptionPane.showMessageDialog(parent, "长度超过限制:" + limit);
            }
        }
    }}
      

  4.   

    js做,
    文本框属性里添onkeypress事件,
    在onkeypress事件处理函数中修改页面显示的数字。
      

  5.   

    这个应该就是你要的吧<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
    <html>
    <head>
    <title> New Document </title>
    <meta name="Generator" content="EditPlus">
    <meta name="Author" content="">
    <meta name="Keywords" content="">
    <meta name="Description" content="">
    <script language="JavaScript">
    <!--
    function checkNameLength(){
    var length = document.getElementById("username").value.length;
    document.getElementById("length").innerHTML = length ;
    if(length > 10){
    document.getElementById("errorMsg").style.display = "block" ;
    }else{
    document.getElementById("errorMsg").style.display = "none" ;
    }

    }
    //-->
    </script>
    </head><body>
    <table>
    <tr>
    <td>请输入姓名:</td>
    <td><input type="text" name="username" id="username" onpropertychange="checkNameLength()">*长度请不要超过10!</td>
    </tr>
    <tr nowrap>
    <td colspan="2">
    <span id="normalMsg">*姓名长度为:</span>
    <span id="length"></span>
    <span id="errorMsg" style="color:red;display:none">您的姓名太长!</span>

    </td>

    </tr>
    </table>
    </body>
    </html>