2008-12-17 94 views
2

我有一個簡單的購物車頁面,顯示在某人購物車中的物品,並從我的表中通過ASP顯示。我有一個用戶可以刪除條目的列。我有ASP正常工作,現在我試圖添加一些AJAX。我有以下代碼:AJAX刪除 - 使用jQuery

$("img.delete").click(function() { 
var id  = $('#id').attr('value');   
    $.ajax({ 
     type: "POST", 
     url: "delete.php", 
     data: "id="+ id, 
     success: function(){ 
      $('tr.selector').remove(); 
      $('div.success').fadeIn(); 
     } 
    }); 
return false; 
}); 

的事情是,我wouild如何去設置它爲每個值,因爲如果我使用上面,我點擊一個,他們會都去。我很困惑如何設置它以處理多行。

回答

4

您只需要選擇要刪除的項目的行。我不知道你怎麼有它設置,但如果圖像元素是行內,你可以使用:

$("img.delete").click(function() { 
     var row = $(this).parents('tr:first'); 

     ... 

     success: function(){ 
      $(row).remove(); //Remove the row containing the image element 
      ... 
     } 

     ... 
    }); 
+0

該代碼運行良好!謝謝。是tr:首先說當你點擊img時,拿着桌子的父tr? – Coughlin 2008-12-17 18:32:53

0

如果它是你想要的,那麼這將工作HTML的id屬性。你爲什麼不嘗試它?編輯:它可能只是row.attr('id');它可能只是row.attr('id');它可能只是row.attr('id');它已經從我的腦海裏滑落,沒有帶使用jQuery的某個時候:)

0

最簡單的事情是一個$variable (id)附加到類每個項目的奔,說

// $("img.delete_<?php echo $id;?>").click(function() 

在它出現這種情況img.delete_1,img.delete_2 ECT對每個項目,

然後應用相同的類循環項目

<td class="delete_<?php echo $id;?>"></td> 

希望這是有道理的

$("img.delete_<?php echo $id;?>").click(function() { 
var id  = $('#id').attr('value');    
     $.ajax({ 
       type: "POST", 
       url: "delete.php", 
       data: "id="+ id, 
       success: function(){ 
         $('tr.selector').remove(); 
         $('div.success').fadeIn(); 
       } 
     }); 
return false; 
});