当前位置:首页 > JavaScript

用js代码实现数量加减

2026-01-31 07:15:39JavaScript

实现数量加减的 JavaScript 代码

以下是一个简单的 JavaScript 实现,用于在网页上实现数量的加减功能,通常用于购物车或表单中的数量选择器。

HTML 结构

<div class="quantity-selector">
  <button id="decrement">-</button>
  <input type="number" id="quantity" value="1" min="1">
  <button id="increment">+</button>
</div>

JavaScript 代码

// 获取 DOM 元素
const quantityInput = document.getElementById('quantity');
const decrementBtn = document.getElementById('decrement');
const incrementBtn = document.getElementById('increment');

// 减量按钮事件
decrementBtn.addEventListener('click', () => {
  let currentValue = parseInt(quantityInput.value);
  if (currentValue > parseInt(quantityInput.min)) {
    quantityInput.value = currentValue - 1;
  }
});

// 增量按钮事件
incrementBtn.addEventListener('click', () => {
  let currentValue = parseInt(quantityInput.value);
  quantityInput.value = currentValue + 1;
});

// 输入框验证
quantityInput.addEventListener('change', () => {
  if (quantityInput.value < parseInt(quantityInput.min)) {
    quantityInput.value = quantityInput.min;
  }
});

CSS 样式(可选)

.quantity-selector {
  display: flex;
  align-items: center;
}

.quantity-selector button {
  width: 30px;
  height: 30px;
  font-size: 16px;
  cursor: pointer;
}

.quantity-selector input {
  width: 50px;
  height: 28px;
  text-align: center;
  margin: 0 5px;
}

功能说明

  • 点击减号按钮会减少数量,但不会低于设定的最小值(默认为1)。
  • 点击加号按钮会增加数量。
  • 输入框本身也支持手动输入数字,并通过验证确保不低于最小值。

扩展功能

如果需要限制最大值,可以添加 max 属性并修改增量按钮的代码:

用js代码实现数量加减

// 修改后的增量按钮事件(带最大值限制)
incrementBtn.addEventListener('click', () => {
  let currentValue = parseInt(quantityInput.value);
  if (currentValue < parseInt(quantityInput.max)) {
    quantityInput.value = currentValue + 1;
  }
});

// 修改后的输入框验证
quantityInput.addEventListener('change', () => {
  if (quantityInput.value < parseInt(quantityInput.min)) {
    quantityInput.value = quantityInput.min;
  }
  if (quantityInput.value > parseInt(quantityInput.max)) {
    quantityInput.value = quantityInput.max;
  }
});

注意事项

  • 确保 minmax 属性在 HTML 中正确设置。
  • 对于表单提交场景,建议在提交前再次验证数值范围。
  • 此实现未考虑浮点数情况,如需支持小数,需修改 parseIntparseFloat

标签: 加减数量
分享给朋友:

相关文章

vue实现日期加减

vue实现日期加减

实现日期加减的方法 在Vue中实现日期加减可以通过JavaScript的Date对象或第三方库如moment.js或date-fns来完成。以下是几种常见的方法: 使用JavaScript的Date…

vue实现加减条

vue实现加减条

Vue 实现加减条 在 Vue 中实现加减条(即数字增减组件)可以通过数据绑定和事件处理来完成。以下是一个简单的实现方式: 模板部分 <template> <div clas…

vue实现数量加减

vue实现数量加减

Vue 实现数量加减功能 在 Vue 中实现数量加减功能可以通过数据绑定和事件处理来完成。以下是具体实现方法: 数据定义 在 Vue 实例的 data 中定义一个变量来存储当前数量值: d…

js 实现加减

js 实现加减

实现加减运算的方法 在JavaScript中实现加减运算可以通过多种方式完成,以下是几种常见的方法: 基础算术运算符 使用+和-运算符直接进行加减运算: let a = 5; let b = 3;…

js实现加减

js实现加减

实现加法运算 在JavaScript中,加法运算可以通过直接使用+运算符完成。以下是一个简单的加法函数示例: function add(a, b) { return a + b; } //…