2016-12-30 3 views
2

jsで作成したliを削除しようとすると、次のコードはクリックされたliだけでなくすべてのリストを削除するという問題があります。
親を選択するとスパンが機能しません適切
あなたが使用することができます。この場合js delete親要素

function showdata() { 
    var newtodo = $("#newtodo").val(); 
    $("ol").append('<li class"batodo" >' + newtodo + '<span class="deltodo">' +" x" + "</span>" + "</li>"); 
} 

$(".deltodo").click(function() { 
    $(this).parents(".batodo").remove(); 
}); 
+0

あなたの要素がツリー構造で構成されており、ルートが削除されていると思います。もしそうなら、あなたは 'parents(" batodo ")'を 'nearest("。batodo ")'に置き換えるべきです。あなたは私たちにいくつかのHTMLの例を確認したり見せたりできますか? –

+0

@Satpal OPはイベントバインディングを間違って使用していますが、彼の質問のタイトルと説明はまったく異なる問題を示唆しています。これを重複しているとは見当たりません。少なくとも、動的に作成された要素のイベントバインディングではありません。 –

+0

@AlexandruSeverinを再度開いて – Satpal

答えて

1

$(this).parent().remove(); 
0

:)

を支援するための作業コードのおかげで

};