javascript - JavaScript removeChild 来自 dom 的输入
问题描述
我正在尝试删除发布到 DOM 上的表单输入,但 removeChild 代码不起作用,当检查控制台时,我将收到一个错误,即:materialize.min.js:6 Uncaught TypeError: Cannot read property 'M_Modal' of null at HTMLBodyElement.value (materialize.min.js:6)
// ----------------Models Materialize Framework----------------
document.addEventListener('DOMContentLoaded', () => {
var elems = document.querySelectorAll('.modal');
var instances = M.Modal.init(elems);
});
//Delete Exercises
const delExerciseBtn = document.querySelector('.del-exercise-btn');
delExerciseBtn.addEventListener('click', (e) => {
if(e.target.className == 'delete'){
const h6 = e.target.parentElement;
h6.removeChild(e.target);
}
});
// Add User's To the Dom.
const addExerciseDom = document.querySelector('.exercise-dom');
const exerciseForm = document.querySelector('.exercises-form');
exerciseForm.addEventListener('submit', (e) => {
e.preventDefault();
// Get Input Value
const value = exerciseForm.querySelector('input[type="text"]').value;
// Create Elements
const h6 = document.createElement('h6');
// Add Content
h6.textContent = value;
// Append To Dom
addExerciseDom.appendChild(h6);
});
解决方案
你可以这样做
// ----------------Models Materialize Framework----------------
document.addEventListener('DOMContentLoaded', () => {
var elems = document.querySelectorAll('.modal');
var instances = M.Modal.init(elems);
});
//Delete Exercises
const delExerciseBtn = document.querySelector('.del-exercise-btn');
delExerciseBtn.addEventListener('click', (e) => {
const h6 = document.getElementsByTagName('h6')[0];
h6.remove();
});
// Add User's To the Dom.
const addExerciseDom = document.querySelector('.exercise-dom');
const exerciseForm = document.querySelector('.exercises-form');
const disabledExersiceBtn = document.querySelector('.disabled-exersicebtn');
exerciseForm.addEventListener('submit', (e) => {
e.preventDefault();
// Get Input Value
const value = exerciseForm.querySelector('input[type="text"]').value;
// Create Elements
const h6 = document.createElement('h6');
// Add Content
h6.textContent = value;
// Append To Dom
addExerciseDom.appendChild(h6);
//Disable Btn
disabledExersiceBtn.setAttribute('disabled', 'disabled');
});
推荐阅读
- node.js - 带有 Yarn 工作区的 Firebase 函数
- prolog - Eclipse-clp 中的 nth1 谓词可能存在错误?
- reactjs - Redux Store 在 getInitialProps 中填充,但在客户端为空
- python - Python Scrapy - 从 url 抓取的不是 start_urls 中设置的
- flutter - 在没有 SetState 的情况下调用持久性底页(使用 StreamBuilder)
- python - 如何将列表列表转换为字节?
- php - If Else with isset: else 部分不起作用 [PHP]
- javascript - 谷歌浏览器片段:标识符“...”已被声明
- r - 为相关矩阵选择变量
- c# - console.writeline 数组的值在一行上