Javascript 复选框有问题。选中复选框后,我想使用“删除”按钮删除内容
我正在尝试制作一个web应用程序,但checkbox中有一个小问题。每当我选中复选框时,它都会给我输出“未定义”。当选中复选框时,我想用删除按钮删除内容。我无法捕获问题的确切原因。任何人都可以解释我。需要帮助吗Javascript 复选框有问题。选中复选框后,我想使用“删除”按钮删除内容,javascript,html,css,checkbox,checkboxlist,Javascript,Html,Css,Checkbox,Checkboxlist,我正在尝试制作一个web应用程序,但checkbox中有一个小问题。每当我选中复选框时,它都会给我输出“未定义”。当选中复选框时,我想用删除按钮删除内容。我无法捕获问题的确切原因。任何人都可以解释我。需要帮助吗 var btnAdd=document.getElementById(“添加”); var btnRem=document.getElementById(“rem”); var container=document.getElementById(“cont”); var frm=doc
var btnAdd=document.getElementById(“添加”);
var btnRem=document.getElementById(“rem”);
var container=document.getElementById(“cont”);
var frm=document.getElementById(“frm”);
btnAdd.addEventListener(“单击”,()=>{
var x=document.getElementById(“txt”).value;
变量y=document.getElementById(“国家”);
var h=document.getElementById(“国家”).value;
var element4=document.createElement(“输入”);
element4.type=“复选框”;
element4.id=“检查”;
如果(!x | |!h){
}否则{
如果(y.selectedIndex==0){
}否则{
var base=document.createElement(“div”);
var b=容器.appendChild(基本);
b、 id=“基本”;
var元素=document.createElement(“div”);
var d=b.appendChild(元素);
d、 附加子元素(元素4);
var element1=document.createElement(“输入”);
d、 附加子元素(元素1);
元素1.value=x;
element1.id=“text2”;
element1.readOnly=true;
var数组=新数组();
对于(变量i=0;i{
var g=document.getElementById(“检查”).checked;
如果(g==true){
警报(this.value)
this.parentElement.parentElement.remove();
;
}
})
});代码>
*{
保证金:0;
填充:0;
框大小:边框框;
}
输入,按钮{
边界半径:无;
大纲:无;
边框:1px纯黑;
}
.选择国家{
最大宽度:100%;
}
.集装箱{
最大宽度:80%;
保证金:0自动;
填充顶部:50px;
}
.货柜-1{
最大宽度:50%;
保证金:0自动;
显示器:flex;
柔性包装:包装;
}
形式{
最大宽度:初始宽度;
}
.container-1:第一个孩子{
弹性:3;
}
.货柜-1分区{
弹性:1;
}
.container-1 div输入,.container-1 div选择{
最小宽度:100%;
填充:5px0;
}
#加上#rem{
最小宽度:100%;
填充:5px0;
}
.货柜-2{
最大宽度:50%;
保证金:0自动;
填充顶部:50px;
}
.集装箱-2#底座{
显示器:flex;
填充:10px0;
}
.container-2:第一个孩子{
弹性:3;
显示器:flex;
}
.container-2:第一个孩子#检查{
flex:0.1;
填充:5px0;
}
.container-2:第一个孩子#text2{
弹性:3;
填充:5px0;
}
.货柜-2组{
弹性:1;
}
.container-2 div select{
填充:5px0;
最小宽度:100%;
}
文件
选择国家
印度
韩国
中国
阿拉伯联合酋长国
芬兰
德国
法国
英国
不丹
美国
澳大利亚
添加
删除
在箭头函数的上下文中,此通常是全局或窗口的父作用域,如果您将此.value
替换为document.getElementById(“check”).value,则它将返回复选框值,当您单击yes时,它将删除选中的行
此外,如果要删除多个选中行,则需要使用不同的选择器,例如getElementsByTagName,或querySelectorAll来获取元素集合,而不是按ID获取单个元素(ID应该是唯一的,因此还需要实现某种索引,因为您的网站有多个重复的ID)
此外,您的JS格式不正确,addButton事件连接没有结束标记,请将此代码复制并粘贴到脚本:
var btnAdd = document.getElementById("add");
var btnRem = document.getElementById("rem");
var container = document.getElementById("cont");
var frm = document.getElementById("frm");
btnAdd.addEventListener("click", () => {
var x = document.getElementById("txt").value;
var y = document.getElementById("country");
var h = document.getElementById("country").value;
var element4 = document.createElement("input");
element4.type = "checkbox";
element4.id = "check";
if (!x || !h) {
} else {
if (y.selectedIndex == 0) {
} else {
var base = document.createElement("div");
var b = container.appendChild(base);
b.id = "base";
var element = document.createElement("div");
var d = b.appendChild(element);
d.appendChild(element4);
var element1 = document.createElement("input");
d.appendChild(element1);
element1.value = x;
element1.id = "text2";
element1.readOnly = true;
var array = new Array();
for (var i = 0; i < y.length; i++) {
array.push(y.options[i].text);
}
var element = document.createElement("div");
var d1 = b.appendChild(element);
var element2 = document.createElement("select");
var O = d1.appendChild(element2);
for (var j = 1; j < array.length; j++) {
O.innerHTML +=
"<option value=" + array[j] + ">" + array[j] + "</option>";
}
O.value = h;
frm.reset();
y.selectedIndex = 0;
}
}
});
btnRem.addEventListener("click",()=> {
var checkbox = document.getElementById("check");
if (checkbox.checked) {
alert(checkbox.value)
checkbox.parentElement.parentElement.remove();
}
});
var btnAdd=document.getElementById(“添加”);
var btnRem=document.getElementById(“rem”);
var container=document.getElementById(“cont”);
var frm=document.getElementById(“frm”);
btnAdd.addEventListener(“单击”,()=>{
var x=document.getElementById(“txt”).value;
变量y=document.getElementById(“国家”);
var h=document.getElementById(“国家”).value;
var element4=document.createElement(“输入”);
element4.type=“复选框”;
element4.id=“检查”;
如果(!x | |!h){
}否则{
如果(y.selectedIndex==0){
}否则{
var base=document.createElement(“div”);
var b=容器.appendChild(基本);
b、 id=“基本”;
var元素=document.createElement(“div”);
var d=b.appendChild(元素);
d、 附加子元素(元素4);
var element1=document.createElement(“输入”);
d、 附加子元素(元素1);
元素1.value=x;
element1.id=“text2”;
element1.readOnly=true;
var数组=新数组();
对于(变量i=0;i