应该是可以的.
就是说第二级菜单onchange的时候要获取第四级菜单的选中的值,将其做为一个查询条件.第四个菜单onchange的时候,同时也要取一级和二级菜单的值,将其做为查询条件.也就是说,第三级菜单是根据 1,2,4三个条件来生成的.
就是说第二级菜单onchange的时候要获取第四级菜单的选中的值,将其做为一个查询条件.第四个菜单onchange的时候,同时也要取一级和二级菜单的值,将其做为查询条件.也就是说,第三级菜单是根据 1,2,4三个条件来生成的.
<script language="javascript">
<?
require ('connectdb.php');
$provno=0;
$cityno=0;
$countyno=0;
$sql = "select * from cityinfo";//第1个下拉菜单查询
$sqlcon = mssql_query ( $sql, $conn );
$count = mssql_num_rows ( $sqlcon );
for($i = 0; $i < $count; $i ++) {
$m=0;
$a = mssql_fetch_row ($sqlcon);
for($ii=0;$ii<$provno;$ii++)
{
if($prov[$ii]==$a[4])
$m=1;
}
if($m==0)
{$prov[$provno]=$a[4];
$provvalue[$provno]=$a[3];
$provno++;}
}
//获取city的数量=$provno-1;
for($j=0;$j<$provno;$j++)
{
$cityno=0;
$citycontry[$j]=0;
$sql = "select * from cityinfo where cityname='$prov[$j]'";//第2个下拉菜单查询
$sqlcon = mssql_query ( $sql, $conn );
$count = mssql_num_rows ( $sqlcon );
for($i = 0; $i < $count; $i ++)
{
$m=0;
$a = mssql_fetch_row ($sqlcon);
for($ii=0;$ii<$cityno;$ii++)
{
if($city[$j][$ii]==$a[6])
$m=1;
}
if($m==0)
{$city[$j][$cityno]=$a[6];
$cityvalue[$j][$cityno]=$a[5];
$citycontry[$j]++;$cityno++;}
}
}
//获取city的数量=$citycontry-1;
$leixing=$_POST['buildtype'];for($j=0;$j<$provno;$j++)
{
for($jj=0;$jj<$citycontry[$j];$jj++)
{
$countyno=0;
$sql1="select name from stationinfo where provno='01' and cityno='$provvalue[$j]' and countyno='".$cityvalue[$j][$jj]."'";
//第3个下拉菜单查询
$sqlcon1 = mssql_query ( $sql1, $conn );
$count1 = mssql_num_rows ( $sqlcon1 );
for($i = 0; $i < $count1; $i ++)
{
$m=0;
$a = mssql_fetch_row ($sqlcon1);
for($ii=0;$ii<$countyno;$ii++)
{
if($county[$j][$jj][$ii]==$a[0])
$m=1;
}
if($m==0)
{$county[$j][$jj][$countyno]=$a[0];
$countyvalue[$j][$jj][$countyno]=$a[0];
$countyno++;}
}}
}
?>
</script><!-- 下拉框1 -->
<select name="prov2" id="prov2" onChange="redirec(document.form1.prov2.options.selectedIndex);redirec2(document.form1.prov2.options.selectedIndex,document.form1.city2.options.selectedIndex)" >
<option value="0">市</option>
<?for ($i=0;$i<count($prov);$i++){ ?>
<option value="<?echo $provvalue[$i]?>"><?echo $prov[$i]?></option>
<?
}
?>
</select>
<!-- 下拉框2 -->
<select name="city2" id="city2" onChange="redirec2(document.form1.prov2.options.selectedIndex,document.form1.city2.options.selectedIndex);build(document.form1.buildtype.options.selectedIndex)">
<option value="请选择">区</option></select>
<script language="javascript">
var countt=document.form1.prov2.options.length;
var sel2 = new Array(countt);
sel2[0]=new Array();
<?
for($j=0;$j<$provno;$j++)
{
?>
sel2[<?echo $j+1?>]=new Array();
<?
for($jj=0;$jj<$citycontry[$j];$jj++)
{
?>
sel2[<?echo $j+1?>][<?echo $jj?>]=new Option("<?echo $cityvalue[$j][$jj];?>", "<?echo $city[$j][$jj];?>");
<?
}
}
?>
sel2[0][0]=new Option("请选择","请选择");
function redirec(x)
{
document.form1.city2.length=1;
var two=document.form1.city2;
for (i=0;i<sel2[x].length;i++)
{
two.options[i]=new Option(sel2[x][i].value,sel2[x][i].text); //显示city的内容
}
if(sel2[x].length==0)
two.options[0]=new Option("无选项","无选项"); //如果一级菜单为的子菜单项为空的时候,选择此一级菜单的时候,二级显示为空
}
</script>
<!-- 下拉框3 -->
<select name="county2" id="county2"><option value="请选择">选择</option></select>
<script language="javascript">
var countt=document.form1.prov2.options.length;
var sel3 = new Array(countt);
sel3[0]=new Array();
sel3[0][0]=new Array();
<?
for($j=0;$j<$provno;$j++)
{
?>
sel3[<?echo $j+1?>]=new Array();
<?
for($jj=0;$jj<$citycontry[$j];$jj++)
{
?>
sel3[<?echo $j+1?>][<?echo $jj?>]=new Array();
<?
for($jjj=0;$jjj<count($county[$j][$jj]);$jjj++)
{
?>
sel3[<?echo $j+1?>][<?echo $jj?>][<?echo $jjj;?>]=new Option("<?echo $countyvalue[$j][$jj][$jjj];?>", "<?echo $county[$j][$jj][$jjj];?>");
<?
}
}
}
?>
sel3[0][0][0]=new Option("请选择","请选择");
function redirec2(x,y)
{
document.form1.county2.length=1;
var three=document.form1.county2;
for (i=0;i<sel3[x][y].length;i++)
{
three.options[i]=new Option(sel3[x][y][i].value,sel3[x][y][i].text); //显示county的内容
}
if(sel3[x][y].length==0)
three.options[0]=new Option("无选项","无选项"); //如果一级菜单为的子菜单项为空的时候,选择此一级菜单的时候,二级显示为空
}
</script>
现在是要根据另外一个下拉框
<select name="buildtype" id="buildtype">
<option value="01" selected="selected">01</option>
<option value="02">02</option>
<option value="03">03</option>
来判断第3个下拉框要查询的数据库表名