Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/typo3/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 尝试使用新创建的按钮删除每行HTML元素_Javascript_Html_Innerhtml_Createelement_Createtextnode - Fatal编程技术网

Javascript 尝试使用新创建的按钮删除每行HTML元素

Javascript 尝试使用新创建的按钮删除每行HTML元素,javascript,html,innerhtml,createelement,createtextnode,Javascript,Html,Innerhtml,Createelement,Createtextnode,var运算符=document.getElementByIdoperation; var Desc=document.getElementByIddescription; var Amount=document.getElementByIdvalue; var预算=0.00; 风险值收益=0.00; 风险值费用=0.00; var IncomeList=document.getElementByIdincomeList; var ExpenseList=document.getElementBy

var运算符=document.getElementByIdoperation; var Desc=document.getElementByIddescription; var Amount=document.getElementByIdvalue; var预算=0.00; 风险值收益=0.00; 风险值费用=0.00; var IncomeList=document.getElementByIdincomeList; var ExpenseList=document.getElementByIdeExpenseList; document.getElementByIdsubmit.addEventListenerclick,函数{ var DButton=document.createElementbutton; var t=document.createTextNodeDelete; //document.body.appendChildButton; DButton.appendchild; //将伪不存在数转换为实可函数数 var aValue=parseFloatAmount.value; //如果运算符为+,则预算和收入将按您键入的值增加 if Operator.value==+{ 预算=预算+=保证; 收入=收入+=担保; //中键入的值以及中的说明将显示在每行的收入列表中 IncomeList.innerHTML=IncomeList.innerHTML+Desc.value+:+aValue; IncomeList.appendChildButton; IncomeList.innerHTML=IncomeList.innerHTML+; }否则{ 预算=预算-=有效; 费用=费用-=保险费; ExpenseList.innerHTML=ExpenseList.innerHTML+Desc.value+:+aValue; ExpenseList.appendChildButton; ExpenseList.innerHTML=ExpenseList.innerHTML+; } //声明语句以便于输入 document.getElementByIdbudget.innerText=预算; document.getElementByIDicomTotal.innerText=收入; document.getElementByIdeExpenseTotal.innerText=费用; }; 2018年1月可用预算:

0.00

收入

+0.00

费用

-0.00

+ - &10003; 收入

费用


附加一个行容器,而不是连接到HTML字符串,然后您可以将侦听器附加到调用该行上的.remove的按钮

在可能的情况下,避免分配给innerHTML通常是一个好主意,因为它会损坏对内部任何元素的所有现有Javascript引用。如果要单独分配文本,请使用textContent而不是innerHTML或createTextNode。它更快、更安全、更可预测

var运算符=document.getElementByIdoperation; var Desc=document.getElementByIddescription; var Amount=document.getElementByIdvalue; var预算=0.00; 风险值收益=0.00; 风险值费用=0.00; var incomeList=document.getElementByIdincomeList; var expenseList=document.getElementByIdeExpenseList; document.getElementByIdsubmit.addEventListenerclick,函数{ const parent=Operator.value==+?incomeList:expenseList; const row=parent.appendChilddocument.createElement'div'; var DButton=row.appendChilddocument.createElementbutton; DButton.textContent='delete'; DButton.onclick==>row.remove; var aValue=parseFloatAmount.value; row.appendChilddocument.createTextNodeDesc.value+:+aValue; if Operator.value==+{ 预算=预算+=保证; 收入=收入+=担保; }否则{ 预算=预算-=有效; 费用=费用-=保险费; } //声明语句以便于输入 document.getElementByIdbudget.innerText=预算;document.getElementByIDicomTotal.innerText=收入;document.getElementByIdexpenseTotal.innerText=费用; }; 2018年1月可用预算:

0.00

收入

+0.00

费用

-0.00

+ - &10003; 收入

费用


先生,这是你第二次帮我删除,我无法用语言来描述你修复它的速度,也无法像魔术师一样缩短代码。谢谢。我会花些时间检查你的密码。如何将“删除”按钮向右移动?我知道我应该知道这一点…只需在operator.value测试之前追加文本节点之后再追加DButton