大多數鏈接選擇似乎都是用JSON完成的,但不幸的是,使用我的數據庫來完成這項工作要方便得多。它幾乎在那裏,但由於某種原因,第二個選擇框未正確加載。相反,它加載了它所在頁面的整個HTML,我不知道爲什麼。jquery/php/database不能正常工作的鏈式選擇框
下面是我得到了什麼(請注意,make_list()和model_list()是我以前建函數返回相應的陣列各自的標準)
的JS:
$(document).ready(function(){
$("select#type").attr("disabled","disabled");
$("select#category").change(function(){
$("select#type").attr("disabled","disabled");
$("select#type").html("<option>loading...</option>");
var id = $("select#category option:selected").attr('value');
$.post("select_type.php", {id:id}, function(data){
$("select#type").removeAttr("disabled");
$("select#type").html(data);
});
});
$("form#select_form").submit(function(){
var cat = $("select#category option:selected").attr('value');
var type = $("select#type option:selected").attr('value');
if(cat>0 && type>0)
{
var result = $("select#type option:selected").html();
$("#result").html('your choice: '+result);
}
else
{
$("#result").html("you must choose two options!");
}
return false;
});
});
的HTML/PHP:
<form id="select_form">
<div class="clearfix">
<select id="category">
<option value="">Any</option>
<?php foreach (make_list() as $make) { ?>
<option value="<?php echo $make ?>"><?php echo $make ?></option>
<?php } ?>
</select>
</div>
<div class="clearfix">
<select id="type">
<option value="">Any</option>
</select>
</div>
</form>
當第一選擇改變JQuery的應該看看在所謂的「select_type.php」同一個文件夾中的文件。下面是在該文件(奇怪的$ _POST [「身份證」]似乎並沒有被追加到這個文件要麼,儘管它在JS創建):
foreach (model_list($_POST['id']) as $model) {
echo '<option value="'.$model.'">'.$model.'</option>';
}
我一直在使用這種資源的
這個項目:http://www.yourinspirationweb.com/en/how-to-create-chained-select-with-php-and-jquery/,它使我獲得了大部分的方式,但不幸的是,數據似乎沒有加載到第二個選擇框中。
感謝您的期待!