【发布时间】:2012-07-09 12:51:58
【问题描述】:
我正在尝试使以下代码工作,当单击以下链接时应该显示我的数据库中的数据:(不刷新页面)
<a id="bugatti_link" href="#" database_id="Bugatti">Bugatti</a>
不幸的是,它不起作用,它没有显示任何内容,也没有给出错误。
index.php =
<a id="bugatti_link" href="#" database_id="Bugatti">Bugatti</a>
<script>
$("#bugatti_link").click(load_ajax);
function load_ajax(e) {
var link = $(e.target);
var vehicle_database_id = link.attr("database_id");
var ajax_params = {"brand": vehicle_database_id};
$.getJSON("query2.php", ajax_params, success_handler)
}
function success_handler(data) {
//data variable contains whatever data the server returned from the database.
//Do some manipulation of the html document here. No page refresh will happen.
}
</script>
query2.php =
<?php
$host = "xx";
$user = "xx";
$db = "xx";
$pass = "xx";
$pdo = new PDO("mysql:host=" . $host . ";dbname=" . $db, $user, $pass);
$rows = array();
if(isset($_GET['brand'])) {
$stmt = $pdo->prepare("SELECT brand FROM cars WHERE brand = ? ");
$stmt->execute(array($_GET['brand']));
$rows = $stmt->fetchAll(PDO::FETCH_ASSOC);
}
echo json_encode($rows);
?>
【问题讨论】:
-
尝试用
$(document).ready处理程序包装你的javascript。 -
你能自己做一些基本的调试吗...
query2.php是否正确接收vehicle_database_id?它匹配任何行吗?click处理程序甚至会触发吗?控制台中的任何错误?检查您的网络查看器?这是一个 long 事件序列...您需要缩小 哪个 部分目前不工作。
标签: php javascript jquery sql ajax