【发布时间】:2016-11-29 01:50:25
【问题描述】:
目前在我的大学做一个期末项目,老师问我们的一件事是通过 AJAX POST 方法在单独的脚本上创建一个表(根据用户在前面给出的变量进行查询)页面并用结果填充表格),然后将该表格带回主页。但是到目前为止,我还没有找到正确检索表的方法。
我尝试使用 .load 来恢复表格,但表格出现未定义,就好像 POST 生成的变量没有保存一样。目前我正在使用附加表将表格附加到我的主页,但我的老师和我同意这不是正确的方法,因为它不断向 div 添加更多表格,我们希望每个 POST 只出现一个表格。
这是主脚本:
<!DOCTYPE html>
<head>
<link rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.7/css/bootstrap.min.css" integrity="sha384-BVYiiSIFeK1dGmJRAkycuHAHRg32OmUcww7on3RYdg4Va+PmSTsz/K68vbdEjh4u" crossorigin="anonymous">
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.12.4/jquery.min.js"></script>
<script>
$(document).ready(function(){
$("#buttonone").click(function(){
var test = $("#form input[name= yourlastnamep]").val();
$.post("script_02.php",{alep: test},function(data){
$("#xmas").append(data);
$("#show").click(function(){
$("#xmas").fadeToggle();
});
});
});
});
</script>
</head>
<body>
<form id="form">
<p>Find your Last Name:</p>
<div class="form-group-register">
<label>Last Name:</label>
<input type="text" class="form-control" name="yourlastnamep">
</div>
<div class="form-group-register">
<button type="button" id="buttonone">Find me!</button>
<button type="button" id="show">Toggle!</button>
</div>
</form>
<div id="xmas"></div>
<script src="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.7/js/bootstrap.min.js" integrity="sha384-Tc5IQib027qvyjSMfHjOMaLkfuWVxZxUPnCJA7l2mCWNIpG9mGCD8wGNIcPD7Txa" crossorigin="anonymous"></script>
</body>
</html>
这里是 script_02.php:
<?php
$mysqli = new mysqli("localhost", "user", "password", "formysqli");
$var1 = $_POST['alep'];
$var2 = "SELECT name, middlename, lastname, age, birth from formtable where lastname = '$var1'";
$result = $mysqli->query($var2);
?>
<table border="1">
<tr>
<th>NAME</th>
<th>MIDDLE NAME</th>
<th>LASTNAME</th>
<th>AGE</th>
<th>BIRTH</th>
</tr>
<tr>
<td><?php echo $row['name']; ?></td>
<td><?php echo $row['middlename']; ?></td>
<td><?php echo $row['lastname']; ?></td>
<td><?php echo $row['age']; ?></td>
<td><?php echo $row['birth']; ?></td>
</tr>
</table>
感谢您的关注。
【问题讨论】:
-
我会使用 PHP 来查询 MySQL 和
echo json_encode($assocArray);回到您的 JavaScript 并在客户端构建表。
标签: javascript php jquery ajax mysqli