2017-10-07 145 views
0

这里是代码块,我创建让我做列表(此代码保持一个JavaScript库的内部)如何将文本从一个地方移动到另一个

function addItem() { 
    var newItem = document.createElement("div"); 
    newItem.innerHTML = document.getElementById("box").value; 
    newItem.onclick = removeItem; 
    document.getElementById("list").appendChild(newItem); 
    saveList(); 
} 
function saveList() { 
    localStorage.storedList = document.getElementById("list").innerHTML; 
} 
function loadList() { 
    document.getElementById("list").innerHTML = localStorage.storedList; 
    for(var i = 0; i < list.children.length; i++) { 
    list.children[i].onclick = removeItem; 
} 
} 

此代码是不停在一个JavaScript库里面。

<script> 
    function removeItem() { confirm("Mark task as completed?"); saveList(); } 
</script> 


<input type="text" id="box" placeholder="Type here to add task" 
    onKeyDown="if(event.keyCode==13) addItem();"/> <br/> 
<button class="button" onclick="addItem();" style="float left;"> 
    <span>Add task</span> 
</button> <br/><br/><br/> 

<div class="title"> 
<strong>Tasks:</strong> 
</div> 

<div class="noselect"> 
<p>____________________________________________________</p> 
</div><br/> 

<div id="list"></div> 

<div class="noselect"> 
<p>____________________________________________________</p> 
</div><br/><br/> 

<div class="title"> 
<strong>Completed:</strong> 
</div> 

<div class="noselect"> 
<p>____________________________________________________</p> 
</div><br/> 

<div id="list2"></div> 

<div class="noselect"> 
<p>____________________________________________________</p> 
</div> 

我希望发生的事情是什么时,他们单击任务,并同意将其标记为已完成,我希望它从列表1中删除,并添加到列表2。

这里是链接: https://aaronproductions.neocities.org/To_Do_List.html

这是不是重复,因为可能的重复解决方案不解决我的问题。

+0

它是否可以连接到每一个项目,jQuery有一个['appendTo'] (http://api.jquery.com/appendto/)方法。或者是Vanilla的['appendChild'](https://developer.mozilla.org/en-US/docs/Web/API/Node/appendChild) –

+0

[“剪切和粘贴”的可能的重复 - 在DOM中用Javascript移动节点](https://stackoverflow.com/questions/324303/cut-and-paste-moving-nodes-in-the-dom-with-javascript) –

回答

0

你可以做以下

function onclickHandler(event){ 
    var target = event.target || event.srcElement; 
    var targetValue = target.innerText; 
    addItem(targetValue, document.getElementById('list2'); 
    target.parentNode.removeChile(target); 
} 

function addItem(value, list){ 
    var newItem = createElement(value); 
    list.appendChild(newItem); 
} 

function createElement(value){ 
    var item = document.createElement('div'); 
    item.innerText = value; 
    return item; 

}

的 “onclickHandler” 应在 “列表1”

+0

你可以在我的整个代码块上实现这个代码吗?请原谅我的业余编程 – AaronProduce

相关问题