這裏是我的按鈕返回json_encode作爲數組不工作
$("#editVehicle").button().click(function(event) {
event.preventDefault();
var vp = $("input[name=vehicle_plate]").val(),
dataString = 'vehicle_plate='+ vp;
$.ajax({
type: "POST",
url: "editvehicle.php",
data: dataString,
dataType: "json",
success: function(data){
if(!data.error && data.success) {
$("input[name=vehicle_model]").val(data.vehicleName);
$("input[name=assigned_driver]").val(data.assignedDriver);
} else {
alert(data.errorMsg);
}
}
});
});
這裏是我的PHP
<?PHP
include("db.classes.php");
$g = new DB();
$g->connection();
if($_POST) {
$vehiclePlate = $g->clean($_POST["vehicle_plate"],1);
$g->edit($vehiclePlate);
}
$g->close();
?>
,這裏是我的db.classes
public function edit($vehiclePlate)
{
$sql = "select vehicle_name, driver_id from vehicles where vehicle_plate='$vehiclePlate'";
$result = mysql_query($sql) or die(json_encode(array("error" => 0, "errorMsg" => "MySQL query failed.")));
$row = mysql_fetch_array($result);
if(mysql_num_rows($row)) {
echo json_encode(array(
"success" => 1,
"vehicleName" => $row['vehicle_name'],
"assignedDriver" => $row['driver_id']
));
}
else {
echo json_encode(array(
"error" => 1,
"errorMsg" => "No rows returned"
));
}
}
按鈕標籤
<button type="submit" id="editVehicle" class="ui-button ui-widget ui-state-default ui-corner-all ui-button-text-only" role="button" aria-disabled="false">
<span class="ui-button-text">Edit</span>
</button>
在我的HTML輸入欄中有一個輸入欄,然後當用戶點擊按鈕時,程序會搜索數據庫中的車輛名稱和driver_id以及用戶輸入的車牌,並將該值返回到名爲的另一個輸入欄「vehicle_name」和「assigned_driver」但沒有任何事情發生時,單擊按鈕甚至沒有錯誤警報消息。任何想法在哪裏我錯了嗎?
我沒有看到任何錯誤..從你說這是一個問題,而不是PHP?你可以確認'#editVehicle'在javascript綁定事件觸發之前存在嗎?是一個'$(document).ready(function(){'?)的javascript裏面可以確認ajax調用正在觸發嗎? –
查看我編輯的editVehicle按鈕。 – fanboime12