2017-12-17 6 views
0

リストを追加したり削除したりできるショッピングリストを構築する必要があります。 右側には、現在表示されているリスト見出しのリストがあります。 リストを削除すると、見出しは消えますが、empty()、remove()、text( '')のどちらでもないjQueryはh1からテキストを削除します

あなたは全体のHTMLコード

HTML:   
<div class="container"> 
     <div class="row"> 
      <div class="col-sm-4"> 
       <div id="shoppinglist"> 
        <div class="header left"> 
         <h2>Listen</h2> 
         <i class="glyphicon glyphicon-plus newList" ></i> 
        </div> 
        <ul class="list lists"> 
         <!-- --> 
        </ul> 
       </div> 
      </div> 
      <div class="col-sm-8"> 
       <div class="header right"> 
        <i class="glyphicon glyphicon-search"></i> 
        <i class="glyphicon glyphicon-menu-hamburger"></i> 
        <img src="img/profile.png" alt="profilbild"> 
       </div> 
       <div id="listbody"> 
        <div class="listheader"> 
         <!--<h1>List 1</h1>--> 
        </div> 
        <div id="listitems"> 
         <div class="items_container"> 
          <!-- --> 
         </div> 
        </div> 
       </div> 
      </div> 
     </div> 
     <div class="row"> 
      <div class="col-sm-4"> 
       <div id="categorylist"> 
        <div class="header"> 
         <h2>Kategorien</h2> 
        </div> 
        <ul class="list categories"> 
         <!-- --> 
        </ul> 
       </div> 
      </div> 
      <div class="col-sm-8"> 
       <div class="header"> 
        <input placeholder="Was willst du Einkaufen?" type="text" /> 
       </div> 
       <div id="categoryitems"> 
        <div class="items_container"> 
         <!-- --> 
        </div> 
       </div> 
      </div> 
     </div> 
     <div id="producthover_container"> 
      <div id='producthover'> 
       <div id='producthover_icon'> 
        <i class='glyphicon glyphicon-plus'></i> 
       </div> 
       <div id='producthover_detail'> 
        <span>Details <br> hinzufügen</span> 
       </div> 
      </div> 
     </div> 
    </div> 


list.js: 
printHeader(){ 
    $(".listheader").empty(); 
    $(".listheader").append("<h1 class='h1header'>" + this.name + "</h1>"); 
} 


shoppinglist.js: 
$(".lists").on("click","i",(e) =>{ 
    let r = confirm("Delete?"); 
    if(r) { 
     $(".h1header").remove(); 
     $(e.target).parent().remove(); 
    } 
}); 
+0

Noneを与えられなかったときにこれを行う関数を作成する必要があります:このように。私は 'i'と' .lists'要素は他の場所にあると思いますか? –

+0

'h1header'クラスでは、' list.js'の 'printheader'が実行される必要があります。しかし、ええ、リスト項目はどこですか? –

+0

申し訳ありません、すべてのhtml要素を見ることができます –

答えて

0

を見ることができるので、私はちょうどあなたが親ノードからそれを削除する必要がポストを編集しました。

var child = $(".h1header"); 
$(".listheader").removeChild(child); 

またはあなたが `h1header`という名前のクラスを持って示して要素の子ノード

+0

これは私にエラーが表示されます: 未知の型エラー:$(...)removeChildは関数ではありません at HTMLElement。$。on(shoppinglist.js:78) at HTMLUListElement.dispatch(jquery.min.js:3) at HTMLUListElement.q.handle(jquery.min.js:3) –

関連する問題