jquery DataTables未定义

问题描述 投票:0回答:2

我正在使用jquery dataTable处理Individual列搜索(选择输入)

<script src="~/Scripts/jquery-3.3.1.js"></script>
<script src="~/Scripts/jquery.dataTables.min.js"></script>
<link href="~/Content/jquery.dataTables.min.css" rel="stylesheet" />

$(document).ready(function() {
$('#tblDemo').DataTable({
    initComplete: function () {
        this.api().columns().every(function () {
            var column = this;
            var select = $('<select><option value=""></option></select>')
                .appendTo($(column.footer()).empty())
                .on('change', function () {
                    var val = $.fn.dataTable.util.escapeRegex(
                        $(this).val()
                    );
                    column
                        .search(val ? '^' + val + '$' : '', true, false)
                        .draw();
                });
            column.data().unique().sort().each(function (d, j) {
                select.append('<option value="' + $(d).text().trim() + '">' + $(d).text().trim() + '</option>')
            });
        });
    },
    orderCellsTop: false,
    fixedHeader: true,
    ordering: false,
    lengthChange: false,
});
});

我面临的问题是DataTables搜索无法使用 它提出了dataTable undefine at

$.fn.dataTable.util.escapeRegex(
    $(this).val()
);

这一行请帮我解决

jquery datatables
2个回答
0
投票

看来,当文档没有完全准备就绪时,您的脚本会运行。尝试将代码包装在内:

$(document).ready(function() {
    // your code here
});

-1
投票

如果你使用jquery在head标签中添加这个脚本

<script src="https://ajax.googleapis.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>
© www.soinside.com 2019 - 2024. All rights reserved.