我想根據wordpress模板中另一個組合框中的選擇來填充組合框。組合框的選項來自數據庫。我使用AJAX從combobox1獲取數據,然後發送到help.php。在help.php中,有一個查詢來填充選項,然後顯示在combobox2中。但是,當我在combobox1中選擇選項時,combobox2沒有響應。除了來自combobox1的ID已成功發送。然後我意識到,查詢沒有執行。我覺得這個腳本如下根據wordpress中另一個組合框中的選擇填充組合框
global $wpdb
是主要問題。所以這是一個問題: 1.如何使全局$ wpdb執行? 2.如果global $ wpdb成功執行,combobox2會自動填充嗎?
這裏的形式爲劇本
<form method="post">
<table>
<tr>
<td width="200px">
<select name="region" id="region" style="width:200px;">
<option value="0">-- Choose --</option>
<!-- region -->
<?php
if(count($region)){
foreach($region as $reg){
echo '<option value='.$reg->id_region.'" >'.$reg->name_region.'</option>';
}
} else {
echo '<option value="">No result</option>';
}
?>
</select></td>
<td width="200px"><select name="subregion" id="subregion" style="width:200px;">
<option value="0">-- Choose --</option>
</select>
</td>
<td><input type="submit" value="Process" class="button" /></td>
</tr>
</table>
</form>
這裏是AJAX
<script src="http://code.jquery.com/jquery-1.10.2.min.js" type="text/javascript" > </script>
<script type="text/javascript">
$(document).ready(function(){
$("#region").change(function(){
var region = $("#region").val();
$.ajax({
url: "<?php bloginfo('template_url'); ?>/help.php" ,
data: "region=" + region,
success: function(data){
$("#subregion").html(data);
}
});
});
});
</script>
這裏是help.php
<?php
global $wpdb;
$sub = $_REQUEST['region'];
$table_name = $wpdb->prefix . 'sub_region';
$query = "SELECT * FROM $table_name WHERE id_region='$sub' ";
$sql = $wpdb->get_results($query);
if(count($sql)){
foreach($sql as $q){
echo '<option value="'.$q->id_sub_region.'" >'.$q->name_sub_region.'</option>';
}
} else{
echo '<option value="0">-- No Result --</option>';
} ?>
它的作品!謝謝 – Peron