JQuery Uncaught TypeError:无法读取未定义的属性“重新加载”
Posted
技术标签:
【中文标题】JQuery Uncaught TypeError:无法读取未定义的属性“重新加载”【英文标题】:JQuery Uncaught TypeError: Cannot read property 'reload' of undefined 【发布时间】:2019-09-07 06:04:40 【问题描述】:我想在数据库中插入新数据后重新加载数据表。我已经编写了这段 html 代码。
<table class="table table-striped table-bordered bootstrap-datatable datatable" id="Slider_table">
<thead>
<tr>
<th>Title</th>
<th>Price</th>
</tr>
</thead>
<tbody>
<?php foreach($items as $row)?>
<tr>
<td><?=$row->item_title;?></td>
<td class="center"><?=$row->item_price;?></td>
</tr>
</tbody>
但它在 console.log 中给了我这个错误。
未捕获的类型错误:无法读取未定义的属性“重新加载” 在那条线上
$("#Slider_table").DataTable().ajax.reload();
$('#add_items').on('click', function(e)
e.preventDefault();
var formData = new FormData($("#form1")[0]); //It automatically collects all fields from form
$.ajax(
url: "<?= base_url(); ?>Items/add_items",
type: "post",
data: formData,
async: false,
cache: false,
contentType: false,
processData: false,
success: function(output)
$("#Slider_table").DataTable().ajax.reload();
);
);
【问题讨论】:
1.10.0版本提供reload,你用的是什么版本? 参考***.com/questions/12934144/… 'reload' of undefined 表示无法重新加载。至少.ajax
有问题。
@Deepak 我正在使用最新版本
【参考方案1】:
您必须将数据表引用存储在一个变量中。根据您使用的代码,您不能使用数据表 ajax 重新加载方法。
所以你必须申请以下解决方案:
定义表变量: 变量表;
并像这样在文档就绪功能上加载数据表。
table = $("#Slider_table").DataTable();
$('#add_items').on('click', function(e)
e.preventDefault();
var formData = new FormData($("#form1")[0]); //It automatically collects all fields from form
$.ajax(
url: "<?= base_url(); ?>Items/add_items",
type: "post",
data: formData,
async: false,
cache: false,
contentType: false,
processData: false,
success: function(output)
table.row.add($(output)).draw();
// Here in output you have to return table rows html from php
);
);
【讨论】:
【参考方案2】:你可以使用
dtable.draw();
成功后。它会刷新你的数据表
【讨论】:
$("#Slider_table").location.reload();或简单的 location.reload();成功后?以上是关于JQuery Uncaught TypeError:无法读取未定义的属性“重新加载”的主要内容,如果未能解决你的问题,请参考以下文章
jQuery Uncaught TypeError: $(...).tabs 不是函数
Jquery Uncaught TypeError: $(...).draggable is not a function [重复]
JQuery Uncaught TypeError:无法读取未定义的属性“重新加载”
jQuery Datatable Uncaught TypeError:无法读取未定义的属性“长度”
Uncaught TypeError: jQuery.i18n.browserLang is not a function
JQuery对象调用reset方法:Uncaught TypeError: $(...).reset is not a function