用php实现真正的----连动下拉列表(转载)

类别:编程语言 点击:0 评论:0 推荐:

/***************************
 * author : 大龄青年
 * email : [email protected]
 * from: http://blog.csdn.net/hahawen
***************************/

下面的两个文件copy到同一个文件下,通过web路径访问index.html看看吧,这个是通过iframe来实现的连动更新,list.php目前的内容比较简单,你看通过list.php来进行数据库查询,然后显示出查询的结果列表。

index.html
<body>
<form name="myfrm">
<select name="mlist" onchange="changes();">
<option value="0">请选择...</option>
<option value="北京">北京</option>
<option value="通化">通化</option>
</select>&nbsp;
<select name="slist">
</select>
<iframe id="frame" src="list.php?city=" style="display:none;"></iframe>
<script language="javascript">
function changes(){
frame.location.href = "list.php?city=" + document.myfrm.mlist.value;
}
</script>
</form>
</body>


list.php

<?php
 $data = array("北京"=>array("小强","旺财","小强他爹"),
               "通化"=>array("小温","小宋","他们儿子"),);

 $city = $_GET["city"];

 $result = $data[$city];

 $str = "<script language=\"javascript\">list = parent.document.myfrm.slist;list.length = 0;";

 if($result==null)
  $str .= "tmp = new Option(\"......\", \"\");list.options[0] = tmp;";
 else
  foreach($result as $i => $value)
   $str .= "tmp = new Option(\"{$value}\", \"{$value}\");list.options[$i] = tmp;";
 $str .= "</script>";
   
    echo $str;
?>

本文地址:http://com.8s8s.com/it/it27096.htm