javascript - 动态文本区域内单词的字符限制

标签 javascript php textarea

我正在尝试限制一个单词中的字符数。我成功地发现,如果有人输入超过 15 个字符。我现在正在显示一条消息。我想做的是,如果有人输入超过 15 个字符...java 脚本会显示一条警报,然后删除所有字母,留下该单词的前 14 个字符。我试图找到一些有用的功能,但从未找到有用的东西。 我想在用户仍在输入时动态检查字符限制。 我的代码完成了一半,但有一个缺陷。当计数达到 15 以上时,它会显示消息,并显示警报。现在用户仍然可以保存单词中超过 15 个字符的字符串。希望我解释了这一切。感谢所有人,感谢每个提前付出努力的人。

<textarea id="txt" name="area" onclick="checkcharactercount()"></textarea>


function checkcharactercount(){
  document.body.addEventListener('keyup', function(e) {
      var val = document.getElementById("txt").value;
      var string = val.split(" ");
      for(i=0;i<string.length; i++) {
        len = string[i].length;
        if (len >= 15) {
          alert('you have exceeded the maximum number of charaters in a word!!!');
          break;
        }
      }
  });
}

最佳答案

这是否像您想要的那样工作?

var textArea = document.getElementById('txt');
textArea.addEventListener('keyup', function () {
  var val = textArea.value;
  var words = val.split(' ');
  for (var i = 0; i < words.length; i++) {
    if (words[i].length > 14) {
      // the word is longer than 14 characters, use only the first 14
      words[i] = words[i].slice(0, 14);
    }
  }
  
  // join the words together again and put them into the text area
  textArea.value = words.join(' ');
});
<textarea id="txt" name="area"></textarea>

关于javascript - 动态文本区域内单词的字符限制,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44385766/

相关文章:

javascript - 在文本区域中显示复选框的值

html - 如何在图像旁边放置一个文本区域并让它填满其余空间?

javascript - jquery 查找所有完全匹配的 td

javascript - 将右键单击选项选择事件添加到 Chrome 扩展程序的图标

javascript - 测试调用返回 promise 的函数的函数

php - Stripe s2Member Pro 插件在实时模式下返回 card_declined

php - 创建另一个 "Featured Image"选择器 wordpress

php - 安装PHP,MySQL和Apache2后,在Ubuntu的哪里可以找到DocumentRoot?

javascript - 将 this 关键字用于类/上层函数的主要功能

javascript - jQuery Textarea 选择器内部表单