根据之前的选择自动下拉更改
问题描述:
我希望根据上一个选择中的选择更改下拉选择。所以我有一个数据库来存储车型和车型的值。结构是id,make,model 目前,我有一个函数来获取make,然后获取模型,然后调用Make选项和Model选择的函数,但它显示了所有这些,我不希望。 那么我该如何做到这一点? 我已经在这里搜索过,并看到了东西,但我仍然困惑,没有经验这样做。根据之前的选择自动下拉更改
不要真的以为你需要我目前的任何代码,但如果你这样做,请让我知道。
答
我不是那么肯定你的意思,但根据我的理解,
你有两个下拉选择, 一个为父选择,第二个是孩子选择, 孩子选择下拉值取决于父母选择, 是你的意思?
如果是,
一个简单的方法来做到这一点,是使用jQuery和AJAX,
你必须阅读基本Ajax和事件侦听器要做到这一点,
1选择下拉,
<select id="parent_select">
</select>
<select id="child_select">
</select>
/*这将填充你的父母选择*/
$.ajax({
url: 'url that will display all list'
dataType: 'json',
type: 'get',
success: function(data){
var output = "";
$.each(data, function(a,b){
output += "<option value='"+b.id+"'>"+b.parent_select_name+" </option>"
$("#parent_select").append(output);
});
}
})
/*这将填充你的孩子选择在改变你的父母*/
$(document).on("change", "#parent_select", function(){
var parent_id = $(this).attr("id");
$.ajax({
url: 'url that will display child data where parent_id = parent_id ',
type: 'POST',
dataType: 'json',
data: { 'parent_id' : parent_id } /* you are passing parent_id*/
success: function(data){
$("#child_select").empty();
var output = "";
$.each(data, function(a,b){
output += "<option id="+b.child_id+">"+b.child_desc+"</option>";
})
$("#child_select").append(output);
}
})
})
您需要使用'ajax'和'jquery'或'javascript'的值。检查此[链接](https://stackoverflow.com/questions/11237900/first-drop-down-menu-to-auto-change-the-options-of-a-second-dropdown) –
好的,我会采取非常感谢。 –
可能重复的[选择下拉动态使用JavaScript时,页面重新加载,并将改变另一个下拉等](https://stackoverflow.com/questions/45705095/selected-drop-down-dynamically-using-javascript-when-页面重载和意志变化) – Gagantous