【发布时间】:2017-03-11 20:00:48
【问题描述】:
我想在不使用 Ajax 和 Jquery 刷新页面的情况下更新表格数据。
我知道我将需要setInterval() 方法,因为我希望向所有用户刷新表,因为多个用户可以将数据插入到数据库中,并且我想为每个用户更新表。
我已经编写了一个脚本来从表单发送数据,而无需重定向用户或刷新页面,然后将其插入数据库。
MyScript.js
$( document ).ready(function() {
console.log( "Ready!" );
//Submitting from data
$("#submitForm").submit(function(e){
if($('#fName').val() && $('#lName').val() && $('#nickname').val()) {
$.ajax({
type: "POST",
url: "process.php",
data: $("#submitForm").serialize(),
success: function(data){
console.log(data); // show response from the php script.
}
});
}
else {
alert("Please fill the fields.")
}
e.preventDefault();
});
});
在我的process.php 文件中,我将数据插入到数据库中。
现在我有 info.php 文件,它生成包含所有数据的表,并且我有一个表单来插入新数据。
<div id="table" class="col-md-7 ml-5">
<table class="table table-striped table-bordered table-hover table-sm">
<thead class="thead-default">
<tr>
<th>#</th>
<th>First Name</th>
<th>Last Name</th>
<th>Nickname</th>
<th>User ID</th>
</tr>
</thead>
<?php $user->showUsers(); ?>
</table>
</div>
showUsers() 函数只是使用来自 SQL 的数据生成表的其他行。
我不知道如何使用 Jquery 和 Ajax 刷新表格。
我尝试使用.load() 方法,但它也会为我的表单生成html。
请帮忙。
【问题讨论】:
-
您实际上可能在考虑这个问题。您需要在 AJAX 后端生成一个数据结构(如 JSON 格式),然后将其传回页面本身。页面本身的 jQuery 代码应该处理如何将新行插入到预先存在的表中。
标签: javascript php jquery mysql ajax