当前位置:首页 > JavaScript

js 实现maxlength

2026-01-31 17:08:26JavaScript

使用 maxlength 属性

HTML 的 inputtextarea 元素可以直接通过 maxlength 属性限制输入长度:

<input type="text" maxlength="10">
<textarea maxlength="50"></textarea>

通过 JavaScript 动态限制

通过事件监听实现更灵活的校验,例如实时显示剩余字数:

js 实现maxlength

const input = document.querySelector('input');
const maxLength = 10;

input.addEventListener('input', () => {
  if (input.value.length > maxLength) {
    input.value = input.value.slice(0, maxLength);
  }
});

结合提示功能

在限制输入的同时显示剩余字数:

js 实现maxlength

<input type="text" id="limited-input">
<span id="counter"></span>
const input = document.getElementById('limited-input');
const counter = document.getElementById('counter');
const maxLength = 20;

input.addEventListener('input', () => {
  const remaining = maxLength - input.value.length;
  counter.textContent = `${remaining} characters left`;

  if (remaining <= 0) {
    input.value = input.value.slice(0, maxLength);
    counter.style.color = 'red';
  } else {
    counter.style.color = 'black';
  }
});

处理粘贴行为

拦截粘贴内容并自动截断:

input.addEventListener('paste', (e) => {
  e.preventDefault();
  const pastedText = e.clipboardData.getData('text').slice(0, maxLength);
  const newValue = input.value + pastedText;
  input.value = newValue.slice(0, maxLength);
});

兼容非输入框元素

对于 contenteditable 的 DIV 元素实现类似效果:

const editableDiv = document.querySelector('[contenteditable]');
editableDiv.addEventListener('keydown', (e) => {
  if (editableDiv.textContent.length >= 30 && e.key !== 'Backspace') {
    e.preventDefault();
  }
});

标签: jsmaxlength
分享给朋友:

相关文章

js实现验证码

js实现验证码

使用Canvas生成图形验证码 在HTML中创建一个Canvas元素用于绘制验证码。通过JavaScript随机生成数字或字母组合,并添加干扰线、噪点等干扰元素增强安全性。 <canvas i…

js 实现继承

js 实现继承

原型链继承 通过让子类的原型对象指向父类的实例来实现继承。子类实例可以访问父类原型上的属性和方法。 function Parent() { this.name = 'parent'; } Par…

js实现列表

js实现列表

使用 JavaScript 实现列表 JavaScript 提供了多种方式来实现列表功能,包括数组操作、DOM 元素动态生成等。以下是几种常见的实现方法: 使用数组存储列表数据 数组是 JavaSc…

js实现延迟

js实现延迟

实现延迟的方法 在JavaScript中,实现延迟操作有多种方式,以下是几种常见的方法: 使用setTimeout函数 setTimeout是JavaScript中最常用的延迟执行方法。它接受一个回…

js实现tab选项卡切换

js实现tab选项卡切换

实现Tab选项卡切换的JavaScript方法 使用纯JavaScript实现Tab切换功能,可以通过监听点击事件动态切换内容显示状态。以下是两种常见实现方式: 基础DOM操作实现 /…

js实现预览

js实现预览

文件上传预览实现 使用JavaScript实现文件上传预览功能,可以通过FileReader对象读取文件内容并显示预览。以下代码支持图片、文本和PDF文件的预览: // HTML部分需要包含…