Я пытаюсь удалить строку из таблицы данных после успешного вызова ajax. Строки в таблице представляют события, которые пользователь «принимает» или «отклоняет».
DataTable создается с помощью asp: Repeater:
<table id="dtTriage">
<tbody id="tbodyT">
<asp:Repeater ID="rptT" runat="server">
<ItemTemplate>
<tr class="odd gradeX" id='raw<%#Eval("eventId") %>'>
<td class="td-triage">
[...]
</td>
</tr>
</ItemTemplate>
</asp:Repeater>
</tbody>
</table>
затем в функции, вызванной кнопкой принять или отклонить, я выполняю ajax-вызов как таковой:
var dtTriage = $('#dtTriage').DataTable();
var row = $('#dtTriage tbody tr[id=raw' + eventId + ']')[0];
$.ajax({
url: '<%=ResolveUrl("~/User/Services/WebServices.asmx/SaveEventPreferences") %>',
data: params,
dataType: "json",
type: "POST",
contentType: "application/json;",
success: function (message) {
dtTriage.fnDeleteRow(row, null, true);
}
});
Теперь это работает нормально, если пользователь нажимает кнопку один раз; но если он нажимает ее несколько раз, прежде чем вызов ajax вернет успех, строка удаляется так же, как и строки под ней (столько, сколько вы нажимаете); Я в замешательстве относительно того, почему это происходит: я удаляю эту конкретную строку (по ее eventId).
Любые разъяснения приветствуются,
Спасибо