Jquery Datatables未被引用的引用错误

时间:2017-10-08 13:16:53

标签: javascript jquery ajax datatable

我把它放在变量中但是它仍然给我一个错误,它表示没有被引用的引用错误oTable没有被定义

<script type="text/javascript">
$(document).ready(function(){
    $("#test").click(function(){
         $.ajax({
          url: "https://jsonplaceholder.typicode.com/posts",
          success: function( result ) {
          var oTable = $("#datatable").DataTable({
                processing: true,
                data: result,
                columns: [
                    {data: 'id'},
                    {data: 'title'}
                ]
            });
          }
        });
    });
    $("#reload").click(function(){
        oTable.DataTable().ajax.reload();
    });

});
</script>

这是我的HTML

<table id="datatable">
<thead>
  <tr>
    <th>ID</th>
    <th>TITLE</th> 
  </tr>
</thead>
</table>

请帮助我谢谢

2 个答案:

答案 0 :(得分:0)

你的oTable变量定义是onSuccess回调,所以它不能从onSuccess回调范围之外调用

答案 1 :(得分:0)

希望这对你有用

使用数据表方法加载ajax,

无需再次启动重新加载Datatble使用<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script> <div class="link" data-URL="http://espn.com">ESPN</div>;

我将oTable.ajax.reload()更改为全局变量

oTable
  $(document).ready(function () {

            $("#reload").click(function () {
                oTable.ajax.reload();
            });
            $("#test").click(function () {
                window.oTable = $('#datatable').DataTable({
                    "ajax": {
                        "url": "https://jsonplaceholder.typicode.com/posts",
                        "dataSrc": ""
                    },
                    "columns": [{
                            "data": "id"
                        },
                        {
                            "data": "title"
                        },

                    ]
                });
            });
        });