問題のコードは次のとおりです。
$('a.delete').click(function(e) {
e.preventDefault();
var parent = $(this).parent();
$.ajax({
type: 'get',
url: 'deletemenu.php',
data: 'ajax=1&delete=' + parent.attr('id').replace('menu-',''),
beforeSend: function() {
parent.animate({'backgroundColor':'#fb6c6c'},300);
},
success: function() {
parent.slideUp(300,function() {
parent.remove();
});
$('.menusub').slideUp(300,function() {
$('.menusub').remove();
});
}
});
});
わかりました、私がやりたいのは、slideUp で、特定のメニューの下にあるすべてのサブメニューを削除することです (このメニューを削除するとき)。今私は持ってい$('.menusub').slideUp(300,function() {
$('.menusub').remove();
});
ます。これを達成するために。もちろん、このコードの問題は、すべてのサブメニュー (menusub クラスを持つ) が消えてしまうことです。特定のメニューの下にあるサブメニューのみが消えるようにするにはどうすればよいですか?
ちなみに、これはメニューの
$result = mysql_query("SELECT * FROM Menu") or die(mysql_error());
while($row = mysql_fetch_array($result)){
echo '<div class="menu" id="menu-',$row['menu_id'],'">';
echo $row['menu_name']. " - ". $row['menu_weight']. "<a class='delete' href='?delete=".$row['menu_id']."'> delete</a>";
echo '</div>';
$sub = mysql_query("SELECT * FROM SubMenu INNER JOIN Menu WHERE SubMenu.menu_id = Menu.menu_id AND Menu.Menu_id = ".$row['menu_id']."") or die(mysql_error());
while($subrow = mysql_fetch_array($sub)){
echo '<div class="menusub" id="menusub-',$subrow['submenu_id'],'">';
echo "-- ".$subrow['submenu_name']." - ".$subrow['submenu_weight']."<a class='deletesub' href='?deletesub=".$subrow['submenu_id']."'> delete</a><br/>";
echo '</div>';
}
}`
返信ありがとうございます!