jquery - Jquery Datatable:对象不支持属性或方法'Draw' asp.net
问题描述
使用以下代码:
HTML:
<head runat="server">
<title>datatable loading searching, sorting and updating </title>
<link rel="stylesheet" type="text/css" href="css/jquery.dataTables.min.css" />
<link rel="stylesheet" type="text/css" href="scroller.dataTables.min.css" />
<script src="js/jquery-3.3.1.js")%>" type="text/javascript"></script>
<script src="js/jquery.dataTables.min.js")%>" type="text/javascript"></script>
HTML:
<script type="text/javascript">
$(document).ready(function () {
BindCompanyTable();
//Adding Data manually to datatable
appendCompanyData()
// this is for document ready
});
function BindCompanyTable() {
myTable = $("#tblCompany").DataTable({
"deferRender": true,
"paging": true,
"lengthChange": false,
"searching": true,
"ordering": true,
"info": true,
"autoWidth": false,
"sDom": 'lfrtip'
//"sPaginationType" : "full_numbers"
});
}
function appendCompanyData() {
alert('inside appendCompanyData');
//'DATA SHOWING'
var companytable = $('#tblCompany tbody');
companytable.append('<tr><td>1 </td><td> CompanyA</td><td>Bryant</td></tr>');
companytable.append('<tr><td>2 </td><td> CompanyB</td><td>Little Rock</td></tr>');
companytable.append('<tr><td>3 </td><td> CompanyC</td><td>Little Rock</td></tr>');
companytable.append('<tr><td>4 </td><td> CompanyD</td><td>Little Rock</td></tr>');
companytable.append('<tr><td>5 </td><td> CompanyE</td><td>Little Rock</td></tr>');
//this line is giving an error
//Error: Object doesn't support property or method 'Draw'
companytable.Draw();
}
</script>
</head >
<table id="tblCompany" border="1" style="border-collapse:">
<thead>
<tr>
<th id="thcompany">CompanyRecordID</th>
<th>CompanyName</th>
<th>City</th>
</tr>
</thead>
<tbody></tbody>
</table>
使用 jquery Datatable 显示 5 行,我想检查搜索和排序如何与数据表一起使用。数据显示在表单上,但我在这行代码中得到了上面的错误:
companytable.Draw();
错误:对象不支持属性或方法“绘制”
此外,当我在搜索输入框中键入关键字时,5 个数据行消失了,我看到:“表中没有可用数据”显示在数据表内部。
数据表列标题显示正常
我是否缺少 Jquery 插件,或者可能没有添加正确的插件。
解决方案
您正在draw
表 tbody 而不是表上调用方法
var companytable = $('#tblCompany tbody');
相反,您应该像这样在 tblCompany 元素上调用它:
$('tblCompany').draw()
另外,我不确定为什么%>
脚本标签中的 src 属性末尾有
<script src="js/jquery-3.3.1.js")%>" type="text/javascript"></script>
<script src="js/jquery.dataTables.min.js")%>" type="text/javascript"></script>
推荐阅读
- python - 如何为 python3 安装对流层?
- c# - 如何在 C# 中使用带有文本消息的 SendMediaGroup 在 Telegram 中发送消息?
- python - 在 BeautifulSoup4 中访问多个 div 中的 div
- hyperopt - Hyperopt:返回布尔值而不是int
- asp.net - 如果数据库中的值为空,如何区分下载链接功能?
- javascript - 将UTC转换为特定时区时间Javascript
- arrays - 查找列表中所有可能的项目组合,放入更大尺寸的列表中
- python - 为什么 urlopen 给出响应 200 而请求给出 403?
- css - 可以在@media 中将 min-width 和 max-width 设置为相同的值吗?
- google-chrome - Chrome默认弹出窗口位置和大小