我試圖讓下面的代碼的工作,應該顯示從當下面的鏈接被點擊我的數據庫中的數據:(無需刷新頁面)顯示數據(JavaScript)的
<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。 – Engineer 2012-07-09 12:54:18
你可以自己做一些基本的調試...'query2.php'是否正確接收'vehicle_database_id'?它是否與任何行匹配? 'click'處理程序是否會觸發?控制檯中有任何錯誤?檢查了您的網絡查看器?這是一個很長的一系列事件......你需要縮小這部分目前不工作的部分。 – Matt 2012-07-09 12:54:22