私はここを見ましたが、私がしようとしていることに当てはまるものは見つかりませんでした。ここでdelete_itemのクリックイベントで私のAJAX呼び出しは、次のとおりです。jQuery:セレクタに変数を渡す方法
$.ajax({
type: 'POST',
url: '<?php echo site_url('channel_partners/cms/delete'); ?>',
data: 'article_id=' + article_id,
dataType: 'json',
cache: false,
success: function(data) {
$('li').remove($(this).id);
},
error: function(xhr, status, error) {
alert('Error occurred: ' + status);
}
});
それは働いていないことで削除コールとラインです。 $(this).idは削除しようとしているliのIDを正しく参照しています。私は自分の問題は私が削除呼び出しを使用していると思う。私は構文に何か間違っていると思うが、私は何を伝えることはできない。私はAPIに従ったが、これほど具体的ではなかった。助けてもらえますか?ありがとう。
ああ、私のDOMは次のようになります。
<li id="26"><a class="delete_item" ...></a><li>
まず、 '$(this)).id'は' $() 'が' .id'プロパティを持っているとは思わないので、正しく表示されません。 'this.id'は動作すべきです、' $(this).prop( 'id') 'です。最初の要素は要素のプロパティを取得するためにjQueryのオーバーヘッドを必要としないため、「高速化」する必要があります。 –
FYIの場合、IDは文字で始まる必要があります。 http://www.w3.org/TR/html401/types.html#type-name –
第2に、コールバック内の 'this'はDOM要素を参照していません。 –