在jquery数据表中添加一个html行

时间:2015-02-22 16:27:47

标签: jquery asp.net datatable

function createNotificTable(callback) {

var tbl = $("#gridNotificInbox tbody");
var empid = $("#hdnempidmaster").val(); //logged in employee
var maxid = 0;
if (parseInt($('#gridNotificInbox tbody tr').length) > 0) {
    maxid = Math.max.apply(Math, $("#gridNotificInbox tbody tr td:first-child").map(function () {
        return $(this).text();
    }));
}
alert(maxid);

$.ajax({
    type: "POST",
    url: "notification.aspx/ReturnTableRow",
    data: JSON.stringify({ maxidfetched: maxid, empid: empid }),
    contentType: "application/json; charset=utf-8",
    dataType: "json",
    beforeSend: function () {

    },
    success: function (response) {
        if (response.d.trim() != "") {
            tbl.prepend(response.d);

            //want to call datatable initialization or restyle here//
        }
        callback();
    },
    failure: function (response) {
        //alert(response.d);
    }

});

}

这个函数在asp.net中调用web方法.webmethod返回一个表行结构 “< TR>< TD> ....< / TR>< TR ...”

initializeDatatable-是初始化数据表的函数。

function initializeDatatable() {
try {
    datatbl= $("#gridNotificInbox").dataTable({
    ordering: false
    });

} catch (ex) {
alert(ex);
}
}

现在在“gridNotificInbox”的表格中添加行后如何在数据表中反映它?我可以做第一次初始化但是在添加行之后? 如果我在数据表的第二页,我希望新行将添加到第一页,因为它是前置,而不是附加,但我想留在第二页像gmail。 这段代码不使用datatable.But我想要分页和搜索工具,这就是我使用数据表的原因。

1 个答案:

答案 0 :(得分:0)

function initializeDatatable() {
try {
    datatbl= $("#gridNotificInbox").dataTable({
    ordering: false,
    draw : false,
    });

} catch (ex) {
alert(ex);
}

试试这个。该表格不会自动重绘,并且会保留在您所在的页面,甚至是排序和订购。