Stack Overflow如何显示交互式字符限制?与编辑评论时一样,它会显示您剩下的字符数,以及警告是否太少。
我喜欢Ruby on Rails中的确切功能......但不知道该怎么做?
答案 0 :(得分:12)
Stackoverflow使用jQuery JavaScript Framework,它有很多现有的脚本和插件用于此类事情。
一个例子是Interactive Character Limit for TextArea in jQuery演示了here。
我确信还有其他人。
答案 1 :(得分:5)
我使用以下JavaScript函数来限制textareas中的最大长度
function checkLength(edit, maxlen)
{
if (edit.value.length > maxlen)
edit.value = edit.value.substring(0, maxlen);
document.getElementById('remaining').innerHTML = edit.value.length;
}
将此链接到textarea的onKeyDown和onKeyUp属性:
onKeyDown = "checkLength(this, 100);"
答案 2 :(得分:1)
通过在输入上使用onkeydown事件。有数以百万计的例子,坦率地说,如果这不是一个重复的问题,我会感到惊讶。
答案 3 :(得分:0)
我认为你正在寻找一些javascript,基本上你在文本框onkeypress事件中添加一个处理程序然后获取当前长度:
mytextbox.value.length
并限制它你可以做类似的事情:
if (mytextbox.value.length > maxlimit)
mytextbox.value = mytextbox.value.substring(0, maxlimit);
答案 4 :(得分:0)
您还可以使用简单的javascript事件处理来显示字符数 用于输入元素。无需服务器端处理。
这个javascript捕获文本区域“txt”的按键事件 并显示跨度“count”中的字符数。
看到它在运行 http://aaron.oirt.rutgers.edu/myapp/root/charCount.html
<html>
<head>
<script>
function go() {
var txt=document.getElementById("txt");
txt.onkeydown = countTxt;
}
function countTxt() {
var txt=document.getElementById("txt");
var count=document.getElementById("count");
count.innerHTML = txt.value.length+1; // count the character not shown yet ;)
}
</script>
</head>
<body onload="go()">
<h3>type in the text area and see the count change</h3>
<textarea id="txt" rows="8" cols="30"></textarea>
<br>
count: <span id="count"> 0</span>
</body>
计数可以离开我的+ -1 - 修复(如果你真的想)留给读者。