gpt4 book ai didi

javascript - 在原始 JavaScript 中将 LI 从一个 UL 移动到另一个?

转载 作者:行者123 更新时间:2023-12-04 08:36:33 27 4
gpt4 key购买 nike

我正在尝试制作一个非常简单的“待办事项”列表应用程序。但是我无法将列表项从“待办事项” 列表移至“完成” 列表。

如有任何帮助,我们将不胜感激。

到目前为止,这是我的代码。

HTML

<html>
<head>
<script src="js/main.js"></script>
<link rel="stylesheet" href="css/css.css">
<title>Inlämingsuppgift</title>
</head>
<body>

<input type="text" id="input" placeholder="Add a to-do"></input> <button onclick="addToDo()">Add</button>
<h1>To do</h1>
<ul id="list1">
</ul>
<h1>Done</h1>
<ul id="list2">
</ul>
</body>

JS

function addToDo() {
var input = document.getElementById("input").value + " ";
var list = document.getElementById("list1");
var li = document.createElement("li");
li.className = "selected";
var doneButton = document.createElement("button");
doneButton.innerHTML = "Done";
doneButton.onclick = moveToDo;
doneButton.className = "move";
li.appendChild(document.createTextNode(input));
li.appendChild(doneButton);
list.appendChild(li);
}

function moveToDo() {
document.querySelector('.move').click(function() {
document.querySelector('#list2').insertAdjacentHTML("beforeend",'<li>', document.querySelector('#list1 .selected').text(), '</li>');
document.querySelector('#list1 .selected').remove();
});
}

最佳答案

无需创建和删除,附加现有元素将移动它:

function moveItem() {
const
origin = document.getElementById('origin'),
target = document.getElementById('target'),
el = origin.firstElementChild;
if (el)
target.append(el);
}
<div id="container">
<input type="button" onclick="javascript:moveItem()" value="move 1 li from origin to target" /><br>
<span>Origin</span>
<ul id="origin">
<li>Origin entry 1</li>
<li>Origin entry 2</li>
<li>Origin entry 3</li>
</ul>
<br>
<span>Target</span>
<ul id="target">
</ul>
</div>

关于javascript - 在原始 JavaScript 中将 LI 从一个 UL 移动到另一个?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/64769895/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com