在复选框取消选中事件中从HTML下拉列表中删除项目
remove items from HTML dropdownList at checkbox un-check event
我有一个复选框列表和一个下拉列表。当我选中复选框时,我设法将元素动态添加到下拉列表中。
当我取消选中特定复选框时,如何从下拉列表中动态删除相应的项目。
这是我的代码
//<input type="checkbox" name="docCkBox" value="${document.documentName}" onclick="handleChange(this)"/>
// check box onclick event will call this function
function handleChange(cb) {
if (cb.checked)
{
// Create an Option object
var opt = document.createElement("option");
// Add an Option object to Drop Down/List Box
document.getElementById("query_doc").options.add(opt);
// Assign text and value to Option object
opt.text = cb.value;
opt.value = cb.value;
}
else{
//I want to remove a particuler Item when I uncheck the check-box
//by below method it will always remove the first element of the dropdown but not the corresponding element
var opt = document.createElement("option");
opt.text = cb.value;
opt.value = cb.value;
document.getElementById("query_doc").remove(opt);
}
}
您需要访问select标记中已经存在的选项,而不是创建新的选项。我会得到所有的选项,然后检查每个选项,看看它是否有复选框的值。在其他块中,代码看起来像这样:
var opts = document.getElementById("query_doc").getElementsByTagName('option');
for(var i = 0; i < opts.length; i++){
if(opts[i].value == cb.value){
opts[i].parentNode.removeChild(opts[i]);
}
}
我还没有测试过代码,但总体思路是存在的。
您必须找到所需选项的索引并按索引将其删除。
相关文章:
- 如何在 HTML 下拉列表中制作锚标记
- 数据和HTML下拉列表
- HTML 下拉列表所选值
- 如何根据HTML下拉列表中的数量选择来计算价格
- 从 html.append 追加的 html 下拉列表中获取返回值
- 在复选框取消选中事件中从HTML下拉列表中删除项目
- HTML 下拉列表无法捕获 onChange() 如果下拉列表中只有一个值使用 javascript
- HTML 下拉列表到 Javascript 变量显示错误
- 如何从HTML下拉列表中选择多个值,而无需按住Ctrl按钮
- JavaScript 创建带有日期的 HTML 下拉列表
- 根据在 html 下拉列表中选择的国家/地区填写当前时间
- 在 POST MVC 之后保存 Html 下拉列表值
- 如何根据查询返回选择 html 下拉列表
- HTML下拉列表将我带到错误的URL
- JQuery 根据 HTML 下拉列表选择查找并替换 URL 中的查询字符串
- 使用 AJAX 从 databse 填充 HTML 下拉列表
- 使用 jQuery 和 html 下拉列表加载页面
- 创建包含 SQLite 字段内容的 html 下拉列表
- 在 html 下拉列表中选择默认值
- 从具有不同值的逗号分隔JSON对象填充html下拉列表