首页 新闻 会员 周边 捐助

html中的text控制文本宽度

0
悬赏园豆:5 [已解决问题] 解决于 2012-09-10 18:05

如何使text输入的文本超过text本身宽度时,就不能继续输入

优啊优的主页 优啊优 | 初学一级 | 园豆:197
提问于:2012-06-25 15:40
< >
分享
最佳答案
0

<script type="text/javascript">
    var lim=new Length_Limit();  
    lim.txtNote=document.getElementById("文本框ID ");
    lim.limitCount=宽度;  
    lim.isbyte=true;  
    lim.init(); 
</script>

收获园豆:5
cici.fan | 初学一级 |园豆:46 | 2012-06-25 16:15

function Length_Limit()
{
    var txtNote;        //文本框  
    var limitCount;     //限制的字数  
    var isbyte;         //是否使用字节长度限制(1汉字=2字符)  
    this.init=function()
    {  
        txtNote=this.txtNote;  
        limitCount=this.limitCount;  
        isbyte=this.isbyte;  
        txtNote.onkeydown=function(){wordsLimit()};
        txtNote.onkeyup=function(){wordsLimit()};
    }     
    function wordsLimit()
    {  
        var noteCount=0;          
        if(isbyte)
        {
            noteCount=txtNote.value.replace(/[^\x00-\xff]/g,"xx").length
        }
        else
        {
            noteCount=txtNote.value.length
        }  
        if(noteCount>limitCount){  
            if(isbyte)
            {  
                txtNote.value=txtNote.value.substring(0,txtlength+Math.floor((limitCount-txtByte)/2));  
                txtByte=txtNote.value.replace(/[^\x00-\xff]/g,"xx").length;           
            }else
            {  
                txtNote.value=txtNote.value.substring(0,limitCount);  
            }     
        }  
        txtlength=txtNote.value.length;     //记录每次输入后的长度  
        txtByte=txtNote.value.replace(/[^\x00-\xff]/g,"xx").length;  
    }  
}

cici.fan | 园豆:46 (初学一级) | 2012-06-25 16:21

@cici.fan: 不好意思,这么就才回复你,谢谢你

优啊优 | 园豆:197 (初学一级) | 2012-09-10 18:03
其他回答(2)
0

响应文本输入框的事件然后加以条件显示。

Ethan轻叹 | 园豆:996 (小虾三级) | 2012-06-25 17:30
0

哈哈, 这个只能用js来判断了。

jerry-Tom | 园豆:4077 (老鸟四级) | 2012-06-26 10:58
清除回答草稿
   您需要登录以后才能回答,未注册用户请先注册