用于计算文本区域中字符数的 jQuery 函数未按预期工作

标签 jquery

下面的代码用于计算textarea中的字符数。问题是,当我按“enter”键(同时关注 textarea)时,会显示剩余字符,但 textarea 限制已过。有人可以帮我解决这个问题吗?

$(document).ready(function() {
  var text_max = 99;
  $('#textarea_feedback').html(text_max + ' characters remaining');

  $('#textarea').keyup(function() {
    var text_length = $('#textarea').val().length;
    var text_remaining = text_max - text_length;

    $('#textarea_feedback').html(text_remaining + ' characters remaining');
  });
});
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<textarea id="textarea"></textarea>
<p id="textarea_feedback"></p>

最佳答案

试试这个

此函数计数达到限制,将不允许输入额外的字符

它只是删除多余的字符。

function countChar(val) {
  var len = val.value.length;
  var text_max = 99;

  if (len >= text_max) {
    val.value = val.value.substring(0, text_max);
    $('#textarea_feedback').text(((text_max - len) + 1) + ' characters remaining - out of limit');
  } else {
    $('#textarea_feedback').text((text_max - len) + ' characters remaining');
  }
};
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<textarea cols="50" rows="8" id="field" onkeyup="countChar(this)"></textarea>
<div id="textarea_feedback">99 characters remaining</div>

关于用于计算文本区域中字符数的 jQuery 函数未按预期工作,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35447741/

相关文章:

javascript - Div 内容不显示

javascript - 在 javascript 上获取 JSON 对象内数组的索引

javascript - 如何获取嵌入 IFrame 的网站的主机名

javascript - 以编程方式上传文件

javascript - 在带滚动条的 div 内滚动侧边栏 - $(window).on ('scroll' , function()?

javascript - 如何将 HTML 字符串分割成多个片段并去掉外部标签?

javascript - 可调整大小的 DIV 在新行上制作文本框

javascript - 如何创建 jquery 模态弹出窗口?

jquery - HTML 按钮设计在所有浏览器中都具有渐变效果?

javascript - 如何在 jQuery 中通过现有类添加类