javascript - 如何向 javascript 文本区域添加一个计数器,该计数器像 Twitter 一样计数,但不是向下计数,而是最多增加到 150 个字符

标签 javascript character countdown max

我对 javascript 及其实现知之甚少,但我发现了这个:

<script language="javascript" type="text/javascript">
function limitText(limitField, limitCount, limitNum) {
    if (limitField.value.length > limitNum) {
        limitField.value = limitField.value.substring(0, limitNum);
    } else {
        limitCount.value = limitNum - limitField.value.length;
    }
}
</script>

然后用这一段来实现它:

<form name="myform">
<textarea name="limitedtextarea" onKeyDown="limitText(this.form.limitedtextarea,this.form.countdown,100);" 
onKeyUp="limitText(this.form.limitedtextarea,this.form.countdown,100);">
</textarea><br>
<font size="1">(Maximum characters: 100)<br>
You have <input readonly type="text" name="countdown" size="3" value="100"> character left.</font>
</form>

如何使其不倒数而是最多数到 150 个字符?

最佳答案

这是您需要的代码:

Javascript部分:

<script language="javascript" type="text/javascript">
function limitText(limitField, limitCount, limitNum) {
    if (limitField.value.length > limitNum) {
        limitField.value = limitField.value.substring(0, limitNum);
    } else {
        // notice I set the value of the count to the length of the field
        // rather than setting it to the max chars - the length of the field
        limitCount.value = limitField.value.length;
    }
}
</script>

HTML 部分:

<!-- changed all occurrences of 100 to 150 to match your specified max characters -->
<form name="myform">
<textarea name="limitedtextarea" onKeyDown="limitText(this.form.limitedtextarea,this.form.countdown,150);" 
onKeyUp="limitText(this.form.limitedtextarea,this.form.countdown,150);">
</textarea><br>
<font size="1">(Maximum characters: 150)<br>
<!-- here I changed "You have x characters left" to "You have used x characters." -->
You have used <input readonly type="text" name="countdown" size="3" value="0"> characters.</font>
</form>

工作示例:http://jsfiddle.net/EcDBE/

但是,我建议尝试真正理解我所做的更改,而不是简单地复制和粘贴所提供的代码。为了帮助您完成此操作,我在代码中添加了注释以显示我所做的更改。

关于javascript - 如何向 javascript 文本区域添加一个计数器,该计数器像 Twitter 一样计数,但不是向下计数,而是最多增加到 150 个字符,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11596440/

相关文章:

javascript - 在没有 Web 服务器的情况下使用 Javascript 加载本地文件

javascript - 如何阻止div接受点击事件

JavaScript 切换大小写

安卓倒计时

javascript - “FormData”仅在 IE 中未定义

android - 我如何在 Android 平台上使用 OpenGL ES 绘制一些 unicode 字符,例如中文

r - 在 R 中使用 grepl() 匹配和连接字符

string - 当将char存储在字符串切片中时,char占用多少字节?

JavaScript 倒计时器在达到 1 天、1 秒、1 分钟时更改文本

swift - 将秒转换为分钟 :Seconds in label MacOS