当前位置:首页 > JavaScript

js 实现maxlength

2026-01-31 17:08:26JavaScript

使用 maxlength 属性

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

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

通过 JavaScript 动态限制

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

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

input.addEventListener('input', () => {
  if (input.value.length > maxLength) {
    input.value = input.value.slice(0, 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();
  }
});

js 实现maxlength

标签: jsmaxlength
分享给朋友:

相关文章

js实现轮播

js实现轮播

实现轮播图的基本思路 轮播图的核心逻辑是通过定时切换展示的图片或内容,通常结合左右滑动按钮和指示器(小圆点)增强交互性。以下是基于原生JavaScript的实现方法。 HTML结构 构建轮播图的H…

js实现复制

js实现复制

使用document.execCommand方法 在较旧的浏览器中,可以使用document.execCommand('copy')实现复制功能。创建一个临时的textarea或input元素,将需要…

js实现轮播图

js实现轮播图

基础轮播图实现 使用HTML、CSS和JavaScript实现一个简单的自动轮播图。HTML结构包含一个容器和多个图片项。 <div class="slider"> <div…

js实现全屏

js实现全屏

实现全屏的基本方法 使用JavaScript实现全屏功能主要依赖Element.requestFullscreen()方法。现代浏览器均支持此API,但不同浏览器可能需要添加前缀。 // 触发全屏…

js实现图片预览

js实现图片预览

使用FileReader API实现图片预览 通过FileReader对象读取用户选择的图片文件并显示预览: const input = document.getElementById('image…

js实现验证

js实现验证

验证表单输入 使用JavaScript验证表单输入是常见的需求。可以通过监听表单提交事件,检查输入字段是否符合要求。 document.getElementById('myForm').addEve…