我在我的代码中使用datatable。在我的网页上有一个链接,当我点击数据表将显示,直到这个我的代码工作正常,但它没有响应我也在我的代码中添加了所需的数据表脚本,但当我看到控制台日志它显示数据表不是函数的错误。我正在使用laravel,下面是我添加的数据表链接。
$(document).ready(function(){
$('#exam-result-table').DataTable();
});
$('#show-results').click(function(event) {
//alert('hiiii');
$.ajax({
headers: {'X-CSRF-TOKEN': token},
type: 'POST',
url: ExamResults,
contentType: 'application/json; charset=utf-8',
dataType: 'json',
async: false,
error: function(data){
},
success: function(data) {
console.log("success");
},
})
.done(function (msg) {
$("#main-exam").empty();
$('#main-exam').append(msg);
$('#exam-result-table').DataTable();
});
});
数据表正在显示,但我没有找到控制台日志给出错误的原因以及为什么我的数据表没有响应。
未捕获的TypeError:$(...)。DataTable不是一个函数 在Object.error(exam_homepage.js:166) 在你(app.js:3) at Object.fireWith [as rejectWith](app.js:3) 在r(app.js:4) 在XMLHttpRequest。 (app.js:4) 在Object.send(app.js:4) 在Function.ajax(app.js:4) 在HTMLSpanElement。 (exam_homepage.js:155) 在HTMLSpanElement.dispatch(jquery.js:3074) 在HTMLSpanElement.elemData.handle(jquery.js:2750)
您可能需要错误的jQuery版本。尝试在dataTable之前需要带有jQuery的dataTable版本或者需要jQuery 3。
你可以在这里创建/下载你的dataTable:https://datatables.net/download/index
例如。这是使用jQuery 3的dataTable:
<script type="text/javascript" src="https://cdn.datatables.net/v/dt/jq-3.3.1/dt-1.10.18/datatables.min.js"></script>
你也可以这样做(顺序很重要):
<script src="https://code.jquery.com/jquery-3.4.0.min.js"></script>
<script type="text/javascript" src="https://cdn.datatables.net/v/dt/dt-1.10.18/datatables.min.js"></script>
你不应该在同一页面上需要另一个jQuery。