实现,同一组单选按钮的name属性必须相同,确保互斥选择。通过checked属性标记默认选中项。 <…">
当前位置:首页 > JavaScript

js实现单选多选

2026-04-07 14:52:28JavaScript

单选按钮的实现

在HTML中,单选按钮通过<input type="radio">实现,同一组单选按钮的name属性必须相同,确保互斥选择。通过checked属性标记默认选中项。

<form>
  <input type="radio" id="option1" name="group" value="1" checked>
  <label for="option1">选项1</label>
  <input type="radio" id="option2" name="group" value="2">
  <label for="option2">选项2</label>
</form>

通过JavaScript获取选中值:

const selectedValue = document.querySelector('input[name="group"]:checked').value;
console.log(selectedValue); // 输出选中的value

多选框的实现

多选框使用<input type="checkbox">,每个选项独立选中,name属性可相同或不同。通过遍历检查checked状态获取选中项。

js实现单选多选

<form>
  <input type="checkbox" id="item1" name="items" value="A">
  <label for="item1">选项A</label>
  <input type="checkbox" id="item2" name="items" value="B">
  <label for="item2">选项B</label>
</form>

JavaScript获取多选结果:

const checkboxes = document.querySelectorAll('input[name="items"]:checked');
const selectedValues = Array.from(checkboxes).map(cb => cb.value);
console.log(selectedValues); // 输出数组如["A", "B"]

动态控制选中状态

通过设置checked属性动态修改选中状态:

js实现单选多选

document.getElementById('option1').checked = true; // 单选按钮
document.getElementById('item1').checked = false; // 多选框

事件监听

为单选或多选框添加change事件监听:

document.querySelectorAll('input[type="radio"]').forEach(radio => {
  radio.addEventListener('change', (e) => {
    if (e.target.checked) console.log('选中:', e.target.value);
  });
});

表单提交处理

在表单提交时统一处理选中值:

document.querySelector('form').addEventListener('submit', (e) => {
  e.preventDefault();
  const formData = new FormData(e.target);
  console.log('单选值:', formData.get('group'));
  console.log('多选值:', formData.getAll('items'));
});

标签: 多选单选
分享给朋友:

相关文章

vue单选按钮实现

vue单选按钮实现

Vue 单选按钮实现方法 在 Vue 中实现单选按钮可以通过 v-model 指令绑定数据,结合 <input type="radio"> 或第三方组件库完成。以下是几种常见实现方式:…

vue多选实现

vue多选实现

Vue多选实现方法 在Vue中实现多选功能可以通过多种方式完成,以下是常见的几种方法: 使用v-model绑定数组 通过v-model绑定一个数组,当复选框被选中时,值会自动添加到数组中。 <…

vue实现图片单选

vue实现图片单选

Vue 实现图片单选功能 在 Vue 中实现图片单选功能可以通过多种方式完成,以下是两种常见的实现方法: 方法一:使用 v-model 和单选按钮 通过将单选按钮与图片绑定,利用 v-mod…

vue实现div多选

vue实现div多选

Vue 实现 Div 多选功能 基础实现思路 通过 Vue 的数据绑定和事件处理,可以轻松实现 div 的多选功能。核心是维护一个数组来存储选中的 div 的标识符,并通过 v-bind 和 v-on…

vue前端实现多选

vue前端实现多选

Vue 前端实现多选的方法 使用 v-model 绑定数组 在 Vue 中,可以通过 v-model 绑定一个数组来实现多选功能。适用于复选框组(checkbox)或多选下拉框(select)。 &…

vue实现active多选

vue实现active多选

实现多选高亮(active)效果 在Vue中实现多选高亮效果可以通过以下方式完成: 使用v-for和v-bind:class 通过动态绑定class实现选中状态切换,适用于列表项多选场景: <…