hand
_1_12_102
4
返回栏目
0k
3k
5k
1k
2k
0.2k
2k
1k
2k
3k
2k
3k
2k
3k
3k
0.3k
0k
2k
0k
1k
0.1k
0k
0k
2k
2k
3k
0.2k
3k
0k
2k
2k
2k
3k
2k
2k
0k
4k
2k
2k
0k
3k
3k
2k
2k
2k
1k
3k
1k
3k
2k
1k
0.8k
2k
0k
2k
2k
2k
2k
3k
0.4k
4k
2k
5k
2k
3k
2k
3k
3k
4k
2k
3k
2k
3k
0.7k
2k
0.8k
3k
2k
4k
2k
2k
2k
2k
2k
3k
3k
3k
3k
4k
3k
3k
0k
2k
2k
0k
3k
2k
3k
1k
2k
2k
3k
3k
3k
3k
5k
3k
3k
3k
4k
3k
5k
4k
4k
4k
4k
1k
2k
2k
2k
2k
2k
2k
1k
2k
3k
3k
3k
3k
3k
2k
3k
4k
2k
2k
3k
5k
3k
3k
3k
4k
3k
3k
2k
3k
5k
4k
3k
4k
4k
2k
3k
3k
1k
3k
4k
4k
2k
2k
2k
3k
2k
4k
2k
4k
2k
4k
1k
2k
1k
2k
2k
1k
2k
2k
2k
2k
2k
2k
1k
1k
4k
3k
2k
2k
3k
3k
6k
2k
8k
3k
7k
2k
3k
3k
4k
3k
5k
4k
3k
3k
2k
2k
3k
3k
2k
2k
2k
3k
2k
6k
4k
4k
4k
4k
3k
3k
2k
4k
2k
3k
3k
None
None
None
None
None
None
None
None
None
None
None
None
None
None
None
None
None
0k
返回前端 - HTML5栏目
作者:
贺及楼
成为作者
更新日期:2025-02-27 12:09:53
在前端开发中,表单是与用户进行交互的重要手段,而 input
标签则是表单元素中的核心组件之一。input
标签有多种类型,其中复选框(type="checkbox"
)为用户提供了一种方便的方式来选择多个选项。本文将详细介绍复选框的应用,包括基本用法、实际案例以及一些常见的操作技巧。
复选框允许用户从一组选项中选择多个项目。以下是一个简单的示例代码:
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>复选框基本用法</title>
</head>
<body>
<form>
<label for="apple">苹果</label>
<input type="checkbox" id="apple" name="fruits" value="apple">
<label for="banana">香蕉</label>
<input type="checkbox" id="banana" name="fruits" value="banana">
<label for="cherry">樱桃</label>
<input type="checkbox" id="cherry" name="fruits" value="cherry">
<input type="submit" value="提交">
</form>
</body>
</html>
<input type="checkbox">
:定义了一个复选框元素。id
属性:用于唯一标识复选框,方便与 <label>
标签关联。name
属性:用于将多个复选框归为一组,当表单提交时,服务器可以根据这个名称获取用户选择的值。value
属性:指定当复选框被选中时提交给服务器的值。<label>
标签:通过 for
属性与复选框的 id
关联,点击标签也能选中或取消选中对应的复选框,提高了用户体验。在问卷调查中,经常需要让用户选择多个感兴趣的话题。以下是一个示例:
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>问卷调查 - 复选框应用</title>
</head>
<body>
<form>
<h2>您感兴趣的话题有哪些?</h2>
<label for="tech">科技</label>
<input type="checkbox" id="tech" name="topics" value="tech">
<label for="sports">体育</label>
<input type="checkbox" id="sports" name="topics" value="sports">
<label for="arts">艺术</label>
<input type="checkbox" id="arts" name="topics" value="arts">
<label for="health">健康</label>
<input type="checkbox" id="health" name="topics" value="health">
<input type="submit" value="提交">
</form>
</body>
</html>
用户可以根据自己的兴趣选择多个话题,表单提交后,服务器可以获取用户选择的所有话题。
在电商网站中,复选框常用于商品筛选功能。用户可以通过勾选不同的选项来筛选出符合自己需求的商品。以下是一个简单的商品筛选示例:
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>商品筛选 - 复选框应用</title>
</head>
<body>
<form>
<h2>商品筛选</h2>
<h3>品牌</h3>
<label for="apple-brand">苹果</label>
<input type="checkbox" id="apple-brand" name="brand" value="apple">
<label for="samsung-brand">三星</label>
<input type="checkbox" id="samsung-brand" name="brand" value="samsung">
<h3>价格范围</h3>
<label for="price-1">0 - 1000 元</label>
<input type="checkbox" id="price-1" name="price" value="0-1000">
<label for="price-2">1000 - 2000 元</label>
<input type="checkbox" id="price-2" name="price" value="1000-2000">
<input type="submit" value="筛选">
</form>
</body>
</html>
用户可以根据品牌和价格范围进行筛选,服务器根据用户选择的选项返回符合条件的商品列表。
在某些情况下,需要提供全选/全不选的功能,方便用户快速选择或取消所有选项。以下是一个实现全选/全不选功能的示例代码:
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>复选框全选/全不选功能</title>
</head>
<body>
<form>
<input type="checkbox" id="select-all"> 全选/全不选
<br>
<label for="option1">选项 1</label>
<input type="checkbox" id="option1" name="options" value="option1">
<label for="option2">选项 2</label>
<input type="checkbox" id="option2" name="options" value="option2">
<label for="option3">选项 3</label>
<input type="checkbox" id="option3" name="options" value="option3">
</form>
<script>
const selectAllCheckbox = document.getElementById('select-all');
const optionCheckboxes = document.querySelectorAll('input[name="options"]');
selectAllCheckbox.addEventListener('change', function () {
optionCheckboxes.forEach(function (checkbox) {
checkbox.checked = selectAllCheckbox.checked;
});
});
optionCheckboxes.forEach(function (checkbox) {
checkbox.addEventListener('change', function () {
const allChecked = Array.from(optionCheckboxes).every(function (checkbox) {
return checkbox.checked;
});
selectAllCheckbox.checked = allChecked;
});
});
</script>
</body>
</html>
document.getElementById
和 document.querySelectorAll
方法获取全选复选框和所有选项复选框。change
事件监听器,当全选复选框状态改变时,将所有选项复选框的状态设置为与全选复选框一致。change
事件监听器,当选项复选框状态改变时,检查所有选项复选框是否都被选中,如果是,则将全选复选框设置为选中状态。功能 | 描述 | 示例代码 |
---|---|---|
基本用法 | 定义复选框元素,允许用户选择多个选项 | <input type="checkbox" id="option" name="options" value="option"> |
问卷调查 | 用于收集用户对多个话题的选择 | 见上文问卷调查示例 |
商品筛选 | 方便用户根据不同条件筛选商品 | 见上文商品筛选示例 |
全选/全不选功能 | 提供快速选择或取消所有选项的功能 | 见上文全选/全不选示例 |
复选框在前端表单开发中有着广泛的应用,通过合理使用复选框,可以提高用户交互的便利性和表单数据收集的效率。希望本文能帮助你更好地理解和应用 HTML5 中的复选框。
前端 - HTML5
整章节共240节
快分享给你的小伙伴吧 ~