簡體   English   中英

如何從div中刪除元素?

[英]How to remove the element from div?

var aa = 0;
var arr = new Array("one", "two", "three");
var arr1 = new Array("four", "five", "six");

function cl(me) {
    me.clicked = !me.clicked;
    var id = me.id;
    if (me.clicked) {
        if (id == 1000) aa = arr;
        if (id == "one" || id == "two" || id == "three") aa = arr1;
        var s = document.getElementById("sample");
        var d = document.createElement("div");
        d.id = me.id + 1;
        s.appendChild(d);
        for (i = 0; i < aa.length; i++) {
            var l = document.createElement("label");
            l.innerHTML = aa[i];
            l.id = aa[i];
            l.onclick = function (){cl(this)};
            d.appendChild(l);
        }
    } else {
        var child = document.getElementById(me.id + 1);
        var parent = document.getElementById("sample");
        parent.removeChild(child);
    }
}

標記:

<label id="1000" onclick="cl(this)">click</label><br><div id="sample"></div>

label“點擊”時,成功生成三個標簽“一”“二”“三”。

當我單擊 label “一”標簽“四”“五”“六”成功生成。

當我再次單擊 label 時,“一”“三四五”標簽被刪除。

但問題是當我點擊 label “點擊”然后 label “一”.. 現在當我再次點擊“一”時,label “一二三”被單獨刪除,但不是“四五六一二三”。

HTML label 元素沒有clicked屬性,因此給它們一個clicked屬性不是一個好主意。

標簽適用於沒有 label 或標題的表單控件,例如單選按鈕和復選框。 這里更合適的元素是按鈕(按鈕或輸入類型按鈕元素)。

id 屬性必須以字母開頭,不能全是數字。

瀏覽器會容忍上述所有情況,但是忽略規范並不是一個好主意,因為發布的瀏覽器可能會以您的代碼不符合規范的方式發布。

我認為您的問題是one創建的標簽看起來就像四個創建的標簽。 如果通過單擊一個來刪除四個,則在再次創建之前無法刪除它創建的標簽。

使用元素檢查器查看發生了什么。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM