2014-02-26 31 views
0

我在这个想法的周围看到很多帖子,但其中很多都恢复为javascript,或者它们只是引用一个标准的下拉列表。我创建了一个基于数据库中的选择查询生成下拉菜单的php函数。现在这部分工作正常,但我希望一个投箱取决于另一个,因为他们正在选择汽车的品牌和型号。下面是我有:相关下拉框

function make(){ 
    $qmake = mysql_query("SELECT VMakeID, VMake FROM vmake"); 
    while($record = mysql_fetch_array($qmake)){ 
     echo '<option value="' . $record['VMakeID'] . '">' . $record['VMake'] . '</option>'; 
    } 
} 

function model(){ 
    $qmodel = mysql_query("SELECT VModelID, VModel FROM vmodel"); 
    while($record = mysql_fetch_array($qmodel)){ 
     echo '<option value="' . $record['VModelID'] . '">' . $record['VModel'] . '</option>'; 
    } 
} 

如何使“示范”作用有它的选择查询依赖于“制作”查询,而无需使用AJAX或Javascript?到目前为止,我找到的任何东西都会给我一个直接的答案,所以我在这里停留。

+2

简短的答案是,你不能 - 没有使用Javascript。你*可以*在层叠导航菜单中查找教程(实现存在于HTML5和CSS3中),并查看你是否可以为你的目的调整它们,但依赖选择不是HTML的一部分。 –

+0

然后回答这个问题 - 为什么没有JavaScript? –

+0

我没有JavaScript的唯一原因是因为我真的只是不熟悉它。如果我必须使用我能做的,但这不是我所做的任何事情。 – JeremyThePHPNoob

回答

1

你可以使用一个HTML选择使用optgroup

<select> 
    <optgroup label="Ford"> 
     <option value="Ford Focus">Focus</option> 
     <option value="Ford Transit">Transit</option> 
    </optgroup> 
    <optgroup label="Citroen"> 
     <option value="Citroen C1">C1</option> 
     <option value="Citroen C3">C3</option> 
    </optgroup> 
</select> 

这使得品牌和型号清晰,不可避免之间的扶养。

+0

那不需要我不使用MySQL查询吗? – JeremyThePHPNoob

+0

不,您使用SQL查询的结果来构建该select元素。 –

+0

你能详细说明一下吗?我非常喜欢PHP /编码noob,所以我不确定我是否遵循。谢谢! – JeremyThePHPNoob