如何添加文本;“最大字符数”;到JavaScript计数器?

如何添加文本;“最大字符数”;到JavaScript计数器?,javascript,Javascript,我有一个多达125个字符的JavaScript计数器。一旦达到125,计数器显示“125”。我怎么能让它说“最大字符数”呢 函数textCounter(字段、countfield、maxlimit){ 如果(field.value.length>maxlimit) field.value=field.value.substring(0,maxlimit); //否则,更新“字符左”计数器 其他的 countfield.value=field.value.length; } (最多可输入125个

我有一个多达125个字符的JavaScript计数器。一旦达到125,计数器显示“125”。我怎么能让它说“最大字符数”呢


函数textCounter(字段、countfield、maxlimit){
如果(field.value.length>maxlimit)
field.value=field.value.substring(0,maxlimit);
//否则,更新“字符左”计数器
其他的
countfield.value=field.value.length;
}
(最多可输入125个字符。)

字符总数
为什么不改为这样做:

它让用户知道在键入时还剩下多少。看小提琴的演奏。也不需要jQuery。基本JavaScript

<textarea id="remLen" name="remLen" onkeyup="textCounter('remLen','remLen_count',125);">Some initial text</textarea>
<div id="remLen_count"></div>

textCounter=function(textarea, countdown, maxlimit)
{
  textareaid = document.getElementById(textarea);
  if (textareaid.value.length > maxlimit)
    textareaid.value = textareaid.value.substring(0, maxlimit);
  else
    document.getElementById(countdown).innerHTML = ''+(maxlimit-textareaid.value.length)+' characters left';
}

/*to correctly set the chars left initially if there is initial text in the field*/
textCounter('remLen','remLen_count',125);
一些初始文本
text计数器=函数(text区域、倒计时、最大限制)
{
textareaid=document.getElementById(textarea);
如果(textareaid.value.length>maxlimit)
textareaid.value=textareaid.value.substring(0,maxlimit);
其他的
document.getElementById(倒计时).innerHTML=''+(MaxLimitTextAreaId.value.length)+'左字符';
}
/*如果字段中有初始文本,则正确设置初始左字符*/
文本计数器('remLen','remLen_count',125);
这里有一个例子。我使用jQuery是因为,为什么不呢

HTML将如下所示:

<form name="myform">
    <textarea id="myMessage"></textarea>
</form>
<font id="characterCounter"></font>

剧本是:

$("#myMessage").keyup(function(){
    var length = $(this).val().length;
    if (length != 125 && length < 125)
        $("#characterCounter").html(length + " of 125 characters. " + (125 - length) + " left!");
    else if (length > 125)
        $("#characterCounter").html((length - 125) + " extra characters!");
    else
        $("#characterCounter").html("Max characters!");
}).keyup();
$(“#myMessage”).keyup(函数(){
var length=$(this).val().length;
if(长度!=125&&length<125)
$(“#characterCounter”).html(长度+”共125个字符。“+(125-长度)+“左!”);
否则,如果(长度>125)
$(“#characterCounter”).html((长度-125)+“额外字符!”);
其他的
$(“#characterCounter”).html(“最大字符数!”);
}).keyup();

基本上,每次你按下一个键,它都会用字符数更新标签。

试着将你的js函数文本计数器改为这个,如果你想看是否能正常工作


这很有效,但我不知道是否能回答您的问题。

太好了,谢谢!如果代码中已经有文本,您是否知道如何更新代码?例如,如果我来到一个PHP表单页面,该页面的文本框中已经填充了10个字符,那么在我输入某些内容之前,表单仍然显示0。任何让计数器显示“10”的方法(如果有10个字符填写),然后回答您选择了它是正确的,但问题中的小写字母表示“取而代之”(显示约125),当您达到该数字时,答案代码将显示125,并在您过该数字后显示消息(下一次按键)。
<form name="myform">
    <textarea id="myMessage"></textarea>
</form>
<font id="characterCounter"></font>
$("#myMessage").keyup(function(){
    var length = $(this).val().length;
    if (length != 125 && length < 125)
        $("#characterCounter").html(length + " of 125 characters. " + (125 - length) + " left!");
    else if (length > 125)
        $("#characterCounter").html((length - 125) + " extra characters!");
    else
        $("#characterCounter").html("Max characters!");
}).keyup();
function textCounter(field, countfield, maxlimit) {

    field.value = field.value.substring(0, maxlimit);
    (field.value.length==125)?countfield.value="Max. Characters.":countfield.value=field.value.length;
}