数据表删除行会删除多行

时间:2018-11-07 10:32:22

标签: javascript jquery asp.net datatables

我试图在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)。

任何澄清将不胜感激,

谢谢

0 个答案:

没有答案