【发布时间】:2015-09-23 04:10:26
【问题描述】:
伙计们,我有一个来自我在表中呈现的外包表的数据。我正在使用 PHP 函数解码并显示的 Json 中的原始数据。
我一直在谷歌搜索自动刷新该数据并找到了这个 Auto refresh table without refreshing page PHP MySQL
我已经设法构建了 Ticked 答案中建议的内容,并且似乎是第一次工作,但它没有刷新。所以当页面加载时
我叫这个
$(document).ready (function () {
var updater = setTimeout (function () {
$('div#user_table').load ('get_new_data', 'update=true');
/* location.reload(); */
}, 1000);
});
从控制器文件中加载一个名为 get_new_data 的函数并加载到
<div class="container-fluid" id="user_table">
</div>
Codeigniter 控制器功能是
public function get_new_data(){
$url = 'https://gocleanlaundry.herokuapp.com/api/users/';
$result = $this->scripts->get_data_api($url);
$data_row = $result;
$tbl = '';
$tbl .= '<table class="table table-striped table-responsive" id="tableSortableRes">
<thead>
<tr>
<th>Name</th>
<th>Email Address</th>
<th>Role</th>
<th>Status</th>
<th>Action</th>
</tr>
</thead>
<tbody>';
foreach($data_row as $row){
$tbl .= '<tr class="gradeX">
<td>' . $row->name . '</td>
<td>' . $row->email . '</td>
<td>' . $row->role . '</td>
<td><p id="' . $row->_id. '_status">'.( $row->alive == true ? 'Active' : 'Banned').' </p></td>
<input id="' . $row->_id . 'status_val" value="' . $row->alive . '" type="hidden">
<td class="center">
<a href="#" id="' . $row->_id . '_rec" onclick="UpdateStatus(' . $row->_id . ')" class="btn btn-mini ">'
. ($row->alive == '1' ? '<i class="fa fa-thumbs-o-up fa-fw"></i>' : '<i class="fa fa-thumbs-o-down fa-fw"></i>' ) . '</a>
</td>
</tr>
';
}
$tbl .= '</tbody>
</table>';
echo $tbl;
}
正如我所说,当页面加载显示数据时,某些东西正在运行,但是当我向数据库添加新数据时,它不会自动显示。我想要函数调用和刷新数据。抱歉,我对 javascript 和 jQuery 很陌生,所以请放轻松:)
谢谢大家
【问题讨论】:
-
settimeout 函数在 l'y 上调用一次。如果您希望每 1000 毫秒调用一次刷新函数 WAT,则应使用 setinterval 函数代替 settimeout。
-
是的,但仍然没有显示新数据
-
@SébastienDoncker 谢谢伙计,但我对 Jquery 真的很陌生,你能给我一个例子或重写我的代码吗?请
-
我真的不希望它每秒加载一次。一分钟4次也适合我。我只想自动拉入新数据
-
是的,我用谷歌搜索了 setInterval,它对我有用 :)....@SébastienDoncker 你是明星
标签: javascript php jquery codeigniter refresh