javascript - 清除具有相同 ID 的多选
问题描述
我有一些选择字段,但它们都具有相同的 ID。
<select id="works" name="works[]">
<option selected="" value="">-select-</option>
<option value="A">A</option>
<option value="B">B</option>
<option value="C">C</option>
</select>
<select id="works" name="works[]">
<option selected="" value="">-select-</option>
<option value="D">D</option>
<option value="E">E</option>
<option value="F">F</option>
</select>
我应该如何添加将所有具有相同 ID/名称的选择设置为第一个选项 (-select-) 的按钮?
解决方案
HTML 页面中元素的 ID 应该是唯一的,以避免任何不必要的错误。
要解决您的问题,您可以按名称选择下拉列表,然后将值设置为''
(value
第一个option
标签的)。
document.querySelector('#reset')
.addEventListener('click', () => {
document.querySelectorAll('select[name="works[]"]')
.forEach(item => {
item.value = '';
});
});
<select id="works" name="works[]">
<option selected="" value="">-select-</option>
<option value="A">A</option>
<option value="B">B</option>
<option value="C">C</option>
</select>
<select id="works" name="works[]">
<option selected="" value="">-select-</option>
<option value="D">D</option>
<option value="E">E</option>
<option value="F">F</option>
</select>
<button id="reset">Reset</button>
推荐阅读
- c++ - boost::mutex 发布 VS 调试构建
- python - 如何使用类创建简单的模拟代码
- angular - 在 ControlValueAccessor 中调用registeredOnChange() 时不调用writeValue()
- mysql - 外键约束格式不正确-MYSQL
- jquery - 如何使用 :after 选择器通过 jQuery 更改背景颜色?
- angularjs - Laravel 和 AngularJS 路由问题
- ios - 当我们必须要求在 App 中使用 In-App-Purchase 时
- ios - 将 Swift 静态库与 Objective-C 项目一起使用时会出错
- angular - 如何在 `*ngFor` 循环中有条件地添加元素?
- javascript - TypeError:对象不支持“最终”的属性或方法