我在代码中使用了数据表。在我的网页上,当我单击将显示数据表时,有一个链接。到此为止,我的代码可以正常工作,但是没有响应,所以我还在代码中添加了所需的数据表脚本,但是当我看到控制台日志时,它显示了错误,表明数据表不是函数。我正在使用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不是函数
at 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)
答案 0 :(得分:1)
您可能需要使用错误版本的jQuery。 尝试要求包含jQuery的dataTable版本或在dataTable之前要求jQuery 3。
您可以在此处创建/下载数据表: 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。