2013-07-08 106 views
0

我想要这样做,当选择F时,楼层组合框仅显示A1和B1,并且选择K时只有A2和B2显示。取决于另一个的组合框

Garage  : <select name="garage"> 
<option value="F">F</option> 
<option value="K">K</option> 
</select><br /> 
Floor  : <select name="floor"> 
<option value="A1">A1</option> 
<option value="B1">B1</option> 
<option value="A2">A2</option> 
<option value="B2">B2</option> 
</select><br /> 
+0

你试过足够的搜索吗?这是一个非常常见的问题 – Fallen

+0

当你说选择的时候,你的意思是即时或提交后? (javascript vs php) –

+0

当选择立即。这种形式假设是在java(学校项目)中完成的,但由于时间的关系,我们无法完成导致我们使用php的java应用程序。 –

回答

0

确定这里是解决方案,重新编辑,只是测试:

<script> 
function garage_onchange(){ 
    var selGarageValue = document.getElementById("garage").value; 
    var selFloor = document.getElementById("floor"); 

    for(var i=selFloor.options.length-1;i>=0;i--){ 
     selFloor.remove(i); 
    } 

    if(selGarageValue=="F"){ 
     var option = document.createElement('option'); 
     option.text = "A1"; 
     option.value="A1"; 
     selFloor.add(option); 
     option = document.createElement('option'); 
     option.text = "B1"; 
     option.value="B1"; 
     selFloor.add(option); 
    } 
    else if(selGarageValue=="K"){ 
     var option = document.createElement('option'); 
     option.text = "A2"; 
     option.value="A2"; 
     selFloor.add(option); 
     option = document.createElement('option'); 
     option.text = "B2"; 
     option.value="B2"; 
     selFloor.add(option); 
    } 
} 
</script> 

Garage: 
<select id="garage" name="garage" onchange="garage_onchange();"> 
<option value="S" selected="selected">-Choose Garage-</option> 
<option value="F">F</option> 
<option value="K">K</option> 
</select> 

<br /> 
Floor: 
<select name="floor" id="floor"> 
</select> 
+0

我是PHP和java的新手,你能解释一下javascript的部分吗?就像我只是把它放在PHP部分的下面,或者是我需要做的事情。 –

+0

你需要使用javascript,DOM操作。这就是为什么你需要在每个select元素中放入“id”属性,以便从javascript(document.getElementById(“id-element”))中获取它们。首先删除所有选项,然后根据if语句,根据您的原始问题添加选项。 – ESt3b4n

+0

太棒了!我只是测试它,它的工作原理,一个小的事情,但是,默认情况下,它是在车库F显示所有4层楼。是否可以更改此选项,或将“选择车库”作为默认选择。 –

0

如果你想做出的选择瞬间,使用JavaScript。

HTML:

Garage  : <select name="garage" id="garage"> 
<option value="F">F</option> 
<option value="K">K</option> 
</select><br /> 
Floor  : <select name="floor" id="floor"> 
<option value="A1">A1</option> 
<option value="B1">B1</option> 
</select><br /> 

的Javascript:

<head> 
<script src="http://ajax.googleapis.com/ajax/libs/jquery/1.10.1/jquery.min.js"> 
</script> 

<script> 
$("#garage").change(function() { 
    var val = $(this).val(); 
    if (val == "F") { 
     $("#floor").html("<option value='A1'>A1</option><option value='B1'>B1</option>"); 
    } else if (val == "K") { 
     $("#floor").html("<option value='A2'>A2</option><option value='B2'>B2</option>"); 
    } 
}); 

</head> 

为了实现这一点在你的PHP应用程序,只是把上面的代码在HTML的<head>一部分。

相关问题