2017-04-13 11 views
-1

によって段落を削除しない:はJQuery .remove()私はHTMLの体内でこのような何かを持っているID

<p id="test.txt"><a href="javascript:void(0);" class="disp">test.txt</a> [<a href="javascript:void(0);" class="del">x</a>]</p> 
<p id="test2.txt"><a href="javascript:void(0);" class="disp">test2.txt</a> [<a href="javascript:void(0);" class="del">x</a>]</p> 
<p id="test3.txt"><a href="javascript:void(0);" class="disp">test3.txt</a> [<a href="javascript:void(0);" class="del">x</a>]</p> 
<p id="test4.txt"><a href="javascript:void(0);" class="disp">test4.txt</a> [<a href="javascript:void(0);" class="del">x</a>]</p> 
<p id="test5.txt"><a href="javascript:void(0);" class="disp">test5.txt</a> [<a href="javascript:void(0);" class="del">x</a>]</p> 
<p id="test6.txt"><a href="javascript:void(0);" class="disp">test6.txt</a> [<a href="javascript:void(0);" class="del">x</a>]</p> 

これは、関連するjQueryのコードの一部です:

$('a').click(function(e) { 
    e.preventDefault(); 
    var myClass = $(this).attr("class"); 
    if (myClass==="del"){ 
     var idToDelete = $(this).parent().attr("id"); 
     alert(idToDelete); 
     $("#" + idToDelete).remove(); 
     return; 
    } 
}) 

クリックリンクの1つ、それは正しくIDを取得するようだが、段落はページから削除されていません。私は何が欠けていますか?

ありがとうございます!削除する要素に行き来することができたよう\\でエスケープする必要がありますidToDelete内のメタ文字.があるよう

+2

として向上させることができる

注意、あなたがそうでなければjQueryの 'test1'と' txt'またはあなたのクラスの 'id'を持つ要素を探している、期間をエスケープする必要があります'closest( 'p')'を使うことができます。 –

+0

jQueryは、 'txt' =>' $( "#text.txt") ' – sTx

+0

というクラスのid' test'を探しています。 '$(this).parent()。remove()'も使うことができます。直接私は思う、Satpalが – sTx

答えて

1

、ジャスト

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

$("#" + idToDelete).remove();が動作していない理由を使用します。あなたは、コード

$('a.del').click(function(e) { 
    e.preventDefault(); 
    $(this).parent().remove(); 
}) 
+0

絶対に完璧!私はそれが私がやっている愚かなものだと分かっていました。私はあなたの助言を受けて、JQueryでa.delセレクタを使用しました。どうもありがとうございます! – Aommaster

関連する問題