0

質問があります。つまり、以前の div コードを選択するにはどうすればよいですか?

if($i > $start_from){
                echo "<div id=\"blog$i\"><h1 style=\"padding-top:30px; font-size:14px;\" id=\"shareContent\"><a target=\"_blank\" href=\"$url\">$title</a><br /></h1>
                $desc
                <br />
                <p><em>hahaquotes, DATED: $date, URL: <a target=\"_blank\" href=\"$url\">$url</a></em></p>
                <div class=\"applyLink\" style=\"width:720px; padding-right:12px; margin-top:20px;\">
                <p><a target=\"_blank\" href=\"$url\">READ</a><span style=\"float:right; cursor:pointer;\"><a class=\"delete\">DELETE</a></span></p>
                </div></div>";
                if($i == $start_from + 4) break; 
                }
                }

これは私のコードです。DELETEをクリックすると、div全体を削除する必要があります。divのIDが動的に作成されます.jqueryを使用してこれを達成するにはどうすればよいですか. 助けてくださいよろしくお願いします

4

4 に答える 4

3

deleteクラスをセレクターとして使用して、クリック ハンドラーをアンカーにアタッチします。ハンドラー内ではthis、クリックされた要素が参照され、そこから ID を知らなくても、削除したいものにたどることができます。

$("a.delete").click(function() {
    $(this).closest("div").closest("div").remove();
});

この.closest()メソッドは、DOM を上に移動して、指定されたセレクターに一致する最も近い祖先を見つけます。あなたの特定の html 構造では、探している div は 2 番目に近いので、2 つの呼び出しを.closest()一緒に連鎖させただけです。

特定のクラスを削除する div を指定するように html を変更すると、これを単純化でき.closest()ます。

echo "<div id=\"blog$i\" class=\"entry\">(etc.)"

$("a.delete").click(function() {
    $(this).closest("div.entry").remove();
});

これらの構造が複数ある場合、各「削除」リンクは、それが属する div のみを削除します。

于 2012-06-26T05:29:50.650 に答える
0

セレクターを次のように使用できます

       $('div[id$="blog"]')
于 2012-06-26T05:25:50.027 に答える
0

親の div にはid属性があり、他のものには属性がないと仮定しdivますid(あなたの例のように)。
あなたが使用することができます

$(".delete").click(function() {
    $(this).parents("div[id]").remove();
 }):

EDIT :代わりに
使用すると、より効果的になります。 .closest().parents()

$(".delete").click(function() {
    $(this).closest("div[id]").remove();
 }):

nnnnnn さん、ありがとうございます。

于 2012-06-26T05:31:13.227 に答える
0

あなたのコードは次のようになります:-

JQuery:-

$(document).ready(function(){
    $('a.delete').click(function(){
        $(this).closest('.parentPanel').remove();
    });

});

編集: 通知された仲間の数に変更parentUntill()され、一致したセレクターの 1 ステップ下のセレクターclosest()を選択することに同意します。parentUntill()* ありがとうございます

変更されたコード:- という名前のクラスを追加しましたparentPanel

if($i > $start_from){
            echo "<div id=\"blog$i\" class=\"parentPanel\"><h1 style=\"padding-top:30px; font-size:14px;\" id=\"shareContent\"><a target=\"_blank\" href=\"$url\">$title</a><br /></h1>
            $desc
            <br />
            <p><em>hahaquotes, DATED: $date, URL: <a target=\"_blank\" href=\"$url\">$url</a></em></p>
            <div class=\"applyLink\" style=\"width:720px; padding-right:12px; margin-top:20px;\">
            <p><a target=\"_blank\" href=\"$url\">READ</a><span style=\"float:right; cursor:pointer;\"><a class=\"delete\">DELETE</a></span></p>
            </div></div>";
            if($i == $start_from + 4) break; 
            }
            }
于 2012-06-26T05:36:07.137 に答える