2016-07-09 9 views
0

Ich möchte eine Zeile löschen, indem Sie eine JSON-Anfrage machen, aber leider funktioniert der Code nicht.Löschen einer Zeile aus einer dynamischen HTML-Tabelle

function deleteRecord(id) { 
    debugger; 
    // === Show confirmation alert to user before delete a record. 
    var ans = confirm("Are you sure to delete a record?"); 

    // === If user pressed Ok then delete the record else do nothing. 
    if (ans == true) { 
     debugger; 
     $.ajax({ 
      type: "POST", 
      url: location.pathname + "WebForm5.aspx/deleteRecord", 
      data: id, 
      contentType: "application/json; charset=utf-8", 
      datatype: "json", 
      async: "true", 
      success: function (dt) { 
       debugger; 

       //=== rebind data to remove delete record from the table. 
       $(this).closest('tr').remove(); 
       $(".errMsg ul").remove(); 
       $(".errMsg").append("<ul><li>Record successfully delete.</li></ul>"); 
       $(".errMsg").show("slow"); 
       clear(); 
      }, 
      error: function (dt) { 
       alert(response.status + ' ' + response.statusText); 
      } 
     }); 
    } 
} 

Dies ist mein Code cehind aspx.cs Code in ASP.net:

public static void deleteRecord(int CategoryID) 
{ 
    clsCategoryBL objproject = new clsCategoryBL(); 
    objproject.CategoryDelete(CategoryID); 
} 

Ich möchte das Problem lösen. Kann mir jemand helfen?

+0

Sie sagen müssen, wo genau Ihr Code funktioniert nicht. Antwort von Serverseite? ist es nur löscht nicht Zeile oder was? was funktioniert nicht? –

+0

In der Server-Seite funktioniert es nicht .. Sie erklären mir nur Details in der Antwort, so dass ich verstehen kann. –

+0

Ich denke, das Problem ist in der Jquery-Code .. HIER DIE FEHLER Daten: ID, zeigen, dass es direkt anzurufen Fehler: Funktion (dt) { Warnung (response.status + '' + response.statusText); } –

Antwort

0

hinzufügen benutzerdefinierte ID atributes auf Zeilen (tr), wenn Sie die Liste wie

<tr data-id='1'></tr> 
<tr data-id='2'></tr> 

erstellen, dann können Sie ändern Linie

$(this).closest('tr').remove(); 

TO

$('tr[data-id='+id+']').remove();