数据表在 Laravel 5.3 中不起作用

Posted

技术标签:

【中文标题】数据表在 Laravel 5.3 中不起作用【英文标题】:DataTable Not working in Laravel 5.3 【发布时间】:2017-04-14 16:26:04 【问题描述】:

我已经列出了我视图中的所有用户如下:

class UsersController extends Controller

    public function index()
        $user = User::orderBy('id', 'DESC')->get();
        return view('admin.users.index',['users'=>$user]);
    

//视图是

<script src="//code.jquery.com/jquery-1.12.3.js"></script>
<script src="//cdn.datatables.net/1.10.12/js/jquery.dataTables.min.js"></script>
<script src="https://cdn.datatables.net/1.10.12/js/dataTables.bootstrap.min.js"></script>
<link rel="stylesheet" href="//maxcdn.bootstrapcdn.com/bootstrap/3.3.6/css/bootstrap.min.css">
<link rel="stylesheet" href="https://cdn.datatables.net/1.10.12/css/dataTables.bootstrap.min.css">

<table class="table table-striped table-bordered"    cellspacing="0" id="table">
   //Loop here
</table>


<script type="text/javascript">
    $(document).ready(function() 
        $('#table').DataTable();
     );
</script>

这是给我错误:

TypeError: $(...).DataTable 不是函数

我做了大部分的研发工作,但没有发现它起作用。请协助这可能是什么问题。

有什么我需要做的吗,因为我已经在 symfony2 中使用它,它在那里工作。

即使我也关注了this。

感谢提前

【问题讨论】:

在您的控制台中:是否有 404? 检查数据表脚本是否正确包含? 它在实际代码中关闭.. 是的,如果我查看页面源代码,所有库都已正确包含.. 【参考方案1】:

尝试正确关闭你的脚本标签:)

&lt;script src="//cdn.datatables.net/1.10.12/js/jquery.dataTables.min.js"&gt;&lt;/script&gt;

【讨论】:

它是DataTable(); 我也试过这个: $(document).ready(function() $('#table').DataTables(); ); TypeError: $(...).DataTables 不是函数【参考方案2】:
<script src="//cdn.datatables.net/1.10.12/js/jquery.dataTables.min.js"</script>

请填写脚本标签。

【讨论】:

【参考方案3】:

$(document).ready(function() 
    $('#example').DataTable();
 );
 
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>

<script src="https://cdn.datatables.net/1.10.12/js/jquery.dataTables.min.js"></script>

 
 <link rel="stylesheet" href="https://cdn.datatables.net/1.10.12/css/jquery.dataTables.min.css">

 

  

     <table id="example" class="display" cellspacing="0" >

               <thead>
         <tr>
            <th >Name</th>
            <th >Email</th>
            <th >Joined</th>
             <th colspan="2">Action1</th>

        </tr>
        <tr>
        <th >Name</th>
            <th >Email</th>
            <th >Joined</th>
            <th>edit</th>
            <th>go</th>
        </tr>
    </thead>
    <tfoot>
        <tr>
          <th> Name </th>
            <th> Email </th>
            <th> Joined </th>
            <th>Action1</th>
                <th>Action2</th>

        </tr>
    </tfoot>
    <tbody>
        <tr>
<td>a</td> 
<td>b</td> 
<td>c</td>
<td>d</td> 
<td>e</td>   </tr>
          </tbody>
            </table>

这是一个工作示例,我认为脚本中的问题包括它需要 http 和 table 表colspan用法根据dataTable https://datatables.net/examples/basic_init/complex_header.html

【讨论】:

我不明白为什么不在我的页面上工作。甚至所有东西都包括在内。这个例子甚至不起作用。 Laravel 刀片模板有什么问题吗? 你换桌了吗?我的意思是它是否从 laravel 中正确打印?检查代码并把你的循环输出然后我们会解决它 $(document).ready(function() $ ('#example').DataTable(); );是的,就像上面一样 我的意思是循环的结果和当前的错误,它不应该是这个 TypeError: $(...).DataTable is not a function no more不,结果正常。我没有进行任何更改循环和查询。只想应用dataTable来渲染Table数据,

以上是关于数据表在 Laravel 5.3 中不起作用的主要内容,如果未能解决你的问题,请参考以下文章

Laravel 5.3路线不起作用

为啥在 RegisterController 中创建函数在 laravel 中不起作用

表单在 laravel 7 中不起作用,啥也没发生

数据表的排序在laravel中不起作用

注册在 Laravel 5 中不起作用

AS 函数在 LARAVEL 数据库语句中不起作用