我正在创建一个程序,其中我有三个选择归档;主要类别,子类别和finalCategories。所以我想要的是当我从主要类别中选择任何选项时,应在子类别字段中显示相关所选类别的子类别。此外,当我从子类别选择任何选项时,相关子类别的finalCategories应显示在finalcategory字段中。
示例;
<select id="mainCategories">
<option>Fashion</option>
<option>Electronics</option>
<option>Another Thing</option>
</select>
时尚的子类别就像
男装时尚的finalCategories就像;
这就是所有类别的结构
见下图
答案 0 :(得分:1)
尝试使用jQuery为其他选择构建新数据。以下是这个想法:
快速示例:
// I assume you already have jQuery
$(function(){
$('select#mainCat').on('change', function(){
// AJAX Request here to get the subcategory by main category.
var mainCatId = $(this).val();
console.log(mainCatId);
var url = 'http://www.example.com/get_subcat_by_maincat';
// you can retrieve mainCatId by $_POST['mainCat'];
var data = {
mainCat: mainCatId
};
$.post(url, data, function(rtn){
console.log(rtn);
$('select#subCat').html(rtn);
}, 'html');
});
});
&#13;
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<select id="mainCat" name="mainCat">
<option value="1">1</option>
<option value="2">2</option>
<option value="3">3</option>
</select>
<select id="subCat" name="subCat">
</select>
&#13;
在服务器端:
<?php
$optStr = '';
if($subCatData){
foreach($subCatData as $value){
$optStr .= '<option value=".$value->field_one.">".$value->field_two."</option>';
}
}
print $optStr;
exit;
?>
执行与其他子类别类似的操作,并根据您的需要进行创作。