[英]Removing dynamically created elements with vanilla JavaScript by clicking on them
[英]Problem when reading elements created in javascript vanilla?
93/5000您好,我有一个关于在创建元素后读取元素的问题,我有以下示例
function createTemplate() { return (` <div class="test1"> <div class="test2"> <tr> <td class="addth"></td> <td class="sumth"></td> </tr> <div> </div> `); } function readTemplate() { const read = document.querySelector('.sumth'); console.log(read); } function btnRead() { const insert = document.getElementById('content'); insert.innerHTML = createTemplate(); readTemplate(); }
我的问题是,我第一次执行调用函数的按钮时未检测到“ sumth” td(即我需要使用的值),它检测到我为null,然后如果我再次赋予它以执行它检测到的按钮,我,但是因为我需要它以前的值,我现在捕获该值,因为此值是动态的,并且每次执行时都会更改。 请不知道我的错误是什么或如何读取创建的组件,谢谢。
tr
和td
标签不在table
。 如果将内部div
标签更改为table
,它将正常工作。
function createTemplate()
{
return (`
<div class="test1">
<table class="test2">
<tr>
<td class="addth"></td>
<td class="sumth"></td>
</tr>
</table>
</div>
`);
}
function readTemplate()
{
const read = document.querySelector('.sumth');
console.log(read);
}
function btnRead()
{
const insert = document.getElementById('content');
insert.innerHTML = createTemplate();
readTemplate();
}
btnRead()
<tr>
必须位于<table>
,而不是<div>
。 因此, <tr>
和<td>
标记将被忽略。
function createTemplate() { return (` <div class="test1"> <table class="test2"> <tr> <td class="addth">Cell 1</td> <td class="sumth">Cell 2</td> </tr> </table> </div> `); } function readTemplate() { const read = document.querySelector('.sumth'); console.log(read); } function btnRead() { const insert = document.getElementById('content'); insert.innerHTML = createTemplate(); readTemplate(); }
<div id="content"></div> <button onclick="btnRead()">Click</button>
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.