Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/471.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 jQuery是否从元素中删除特定文本并将其添加到当前元素?_Javascript_Html_Jquery - Fatal编程技术网

Javascript jQuery是否从元素中删除特定文本并将其添加到当前元素?

Javascript jQuery是否从元素中删除特定文本并将其添加到当前元素?,javascript,html,jquery,Javascript,Html,Jquery,假设我有几个div和一组序列号。当我点击Div时,有一个面板,我可以将一些数字传递到Div中;当我单击第二个div时,我可以将相同的数字传递到当前的div中,但会从其他div中删除重复的数字 var arr = [1, 2, 3,...,10] <div id="panel"> <button>1</button> <button>2</button> ... <button>10</button

假设我有几个div和一组序列号。当我点击Div时,有一个面板,我可以将一些数字传递到Div中;当我单击第二个div时,我可以将相同的数字传递到当前的div中,但会从其他div中删除重复的数字

var arr = [1, 2, 3,...,10]

<div id="panel">
<button>1</button>
<button>2</button>
...
<button>10</button>
</div>

<div id="column">
<div class="card">1, 2</div>
<div class="card active">3, 4, 5, 6, 7</div>
<div class="card">8, 9, 10</div>
</div>
var arr=[1,2,3,…,10]
1.
2.
...
10
1, 2
3, 4, 5, 6, 7
8, 9, 10
我遇到了一个问题:将数字传递给当前div将删除所有其他的(包括那些从未选中的)

$(“#面板按钮”)。在(“单击”,函数(){
$(此).toggleClass(“选定”);
选中选定项()
})
函数checkSelected(){
var-arr=[];
$(“#column.card.active”).html(“”);
对于(变量i=0;i<$(“#面板按钮.选定”)。长度;i++){
var num=$(“#面板按钮.selected”).eq(i).text()
arr.push(num)
}
arr.sort(函数(a,b){
返回a-b;
});
对于(var j=0;j';
第3节(res);
//删除其他。。。
$(“#column.card”).not(“.active”).find(“p:contains(“+arr[j]+”))).filter(函数(){
返回$(此).length>0;
}).remove();
}
}
更新: 刚刚在这里做了个样品


有人吗?有什么帮助吗?真的很感激。

也许检查一下最末端的.remove()是否会丢弃所有的数字?

也许检查一下最末端的.remove()是否会丢弃所有的数字?

说实话,你让我有点不知所措。你能重新措辞一点吗?你能用你当前的代码创建一个工作片段吗?请检查上面的链接,它非常相似:说实话,你已经失去了我一点。你能重新措辞一下吗?你能用你当前的代码创建一个工作片段吗?请检查上面的链接,它非常相似:p
$("#panel button").on("click", function(){
        $(this).toggleClass("selected");
        checkSelected()
})

function checkSelected(){
    var arr = [];
    $("#column .card.active").html("");
    for(var i = 0 ; i < $("#panel button .selected").length; i++){
        var num = $("#panel button .selected").eq(i).text()
        arr.push(num)
    }
    arr.sort(function(a, b){
        return a - b;
    });

    for(var j =0; j < arr.length; j++){
        var div = $("#column .card.active");
        var res = '<p>'+arr[j]+'</p>';
        div.append(res);
        // remove others...
        $("#column .card").not( ".active").find("p:contains("+arr[j]+")").filter(function () {
            return $(this).length > 0;
        }).remove();
    }
}