dataTable刷新ajax成功

时间:2012-06-28 00:14:21

标签: jquery-ui jquery jquery-selectors

我有来自jquery插件dataTables(http://datatables.net/)的数据表,我想在ajax成功时刷新。我尝试了以下代码,但它不起作用。任何帮助将不胜感激

$(document).ready(function() {
    oTable = $('#mytable').dataTable();
    var fa = 0;
    $('#submit tbody td ').click(function() {
    var gCard = $('#mytable tbody').delegate("tr", "click", rowClick);


    });
    function rowClick() {
        fa = this;
        var id  = $("td:eq(1)", this).text();
        cardNumber = $.trim(id);    
        $.ajax({
            url : 'myurltopostto',
            type : 'POST',
            data : {
                id  :   id

            },
            success : function(data) {
                oTable.fnDraw(); //wanted to update here
            },
            error : function() {
                console.log('error');
            }
        });
    }

});

2 个答案:

答案 0 :(得分:2)

您可以使用:fnDeleteRow,它将在内部刷新表格html和数据,在此处查找API详细信息:

http://datatables.net/ref

    oTable.fnDeleteRow( fa );

答案 1 :(得分:0)

亲爱的,亲爱的......亲爱的......我的英语非常糟糕,但我帮助你...我的下面是这样的:

    <script type="text/javascript">

        function Ajax()
        {
            var
                $http,
                $self = arguments.callee;

            if (window.XMLHttpRequest) {
                $http = new XMLHttpRequest();
            } else if (window.ActiveXObject) {
                try {
                    $http = new ActiveXObject('Msxml2.XMLHTTP');
                } catch(e) {
                    $http = new ActiveXObject('Microsoft.XMLHTTP');
                }
            }

            if ($http) {
                $http.onreadystatechange = function()
                {
                    if (/4|^complete$/.test($http.readyState)) {
                        document.getElementById('ReloadThis').innerHTML = $http.responseText;
                        setTimeout(function(){$self();}, 10000);
                        $( this ).hide( "slow" );
                    }
                };
                $http.open('GET', 'cls_Noticias/last_noticias.php', true);
                $http.send(null);
            }

        }

    </script>

</head>
<body>

    <script type="text/javascript">
        setTimeout(function() {Ajax();}, 10000);
    </script>

    <div id="ReloadThis">Espere a que la pagina se actualice!</div>

</body>

美好的生活!