2011-01-22 8 views
0

人は、[追加]ボタンを押して自分のウェブサイトでリストを作成できます。これを実行するためのコード(jqueryのを使用して)次のとおりです。オブジェクトユーザーのDOMを取得する

<script type="text/javascript"> 
function voegToe(){ 
$('#sortable1').append("<li class='ui-state-default'>" + $('#product').html() + $('#eiwit').html() + " <button id='voegtoe' class='zoek' type='button' onClick='deleteObject();'>del</button></li>"); 
} 
</script> 

ので、ボタンを押しても、その中に削除ボタンを持っているのUL#1 sortable1でのLI要素を追加します。今私は、ユーザーが特定のリストアイテムの削除ボタンをクリックすると、そのリストアイテムがリストから削除されるというイベントを作りたいと思います。

どうすればいいですか?リストが作成された時点で、すべてのIDまたはクラスが同じであるため、削除する要素を指定するためには使用できません。どうすればいいですか?削除ボタンが押されたLIだけを削除しますか? 1.4.2+のjQueryを使用して

<script type="text/javascript"> 
    function voegToe(){ 
     $('??????').remove(); 
    } 
    </script> 

答えて

2
$('.zoek').live('click', function() { 
    $(this).parent().remove(); 
}); 
+0

ありがとう!それは完璧に働いた!追加の質問:クリックイベントを「リスニング」するか、ボタンタグ自体にonClickコードを作成することで、ボタンをそのように動作させる方が良いでしょうか? – Javaaaa

+0

@Javaaaa:通常、イベントリスナーを添付する方が良いと思います。それで、あなたは内容と行動を混ぜ合わせません。 – icktoofay

+0

それは意味をなさない! – Javaaaa

2

:ところで

$('#sortable1').delegate('button', 'click', function() { 
    $(this).parent().remove(); 
}); 

は、あなたが重複したIDを持つべきではなく、あなたの代わりに別のクラスを使用する必要があります。要素は複数のクラスの一部であることができます。 class HTML属性は空白で区切られたリストです。

+0

チップのおかげで! (あなたとicktoofayの間に)より良い解決策があるのですか、あるいは両方が働いていて、あなたが他のものより優れていると言うことができませんか? – Javaaaa

関連する問題