类似新浪 腾讯微博字数统计 控制js(区分中英文 符号)

本文介绍了一个使用JavaScript实现的字符计数与输入限制的功能。该功能可以计算用户在输入框中输入的内容,包括中文和英文字符,并实时更新剩余可输入的字符数量。一个英文字符计为一个单位,而一个中文字符计为两个单位。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

<script>
    var maxstrlen = 140;

    function Q(s) {
        return document.getElementById(s);
    }


    function checkWord(c) {
        len = maxstrlen;
        var str = c.value;
        myLen = getStrleng(str);
        var wck = Q("wordCheck");
        if (myLen > len * 2) {
            c.value = str.substring(0, i + 1);
        }
        else {
            wck.innerHTML = Math.floor((len * 2 - myLen) / 2);
        }
    }
    function getStrleng(str) {
        myLen = 0;
        i = 0;
        for (; (i < str.length) && (myLen <= maxstrlen * 2); i++) {
            if (str.charCodeAt(i) > 0 && str.charCodeAt(i) < 128)
                myLen++;
            else
                myLen += 2;
        }
        return myLen;
    }
</script>
</head>
<body>
    <div style="font-size: 16px">
        控制输入框字符输入,计算输入字符总数,显示剩余字数;<br> 一个英文字符算一个字符,一个中文字符算两个字符计算。
    </div>
    <div>
        <textarea onKeyUp="javascript:checkWord(this);"
            onKeyDown="javascript:checkWord(this);" name="content" id="content"
            style="overflow-y: scroll"></textarea>
    </div>
    <DIV>
        还可以输入<span style="font-family: Georgia; font-size: 26px;"
            id="wordCheck">140</span>个字符
    </div>
</body>
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值