当前位置: 首页 > 图文教程 > 网络编程 > PHP > 用php+javascript实现二级级联菜单的制作

PHP
php3:跨平台的服务器端嵌入式脚本语言
关于Zend Optimizer
用PHP3实现文件上载
IIS环境下安装PHP5手记
在Windows2000ADV下配置Apache+PHP5+MySql5
Winodws下IIS/Apache+PHP+MySQL的安装配置
PHP 在Windows 2003 Enterprise Server 、IIS6.0 下的安装
在WIN平台上让你的 Apache 2.0.45 支持 PHP
从实例开始
能得到你是从什么页面过来的,referer的用处
在PHP5中使用DOM控制XML
旧题新貌:PHP截取中文字符串的问题
GraPHPite--PHP图像库新秀
编译php的配置参数
PHP程序与服务器端通讯方法小结
PHP程序与服务器端通讯的方法
用php或js获取图片大小,高宽尺寸.
有关在Windows下配置PHP+Apache+Optimizer失败的问题解决方案
LAMPJT最适用的web开发系统详细配置
实现一个基于Ajax的调查程序

PHP 中的 用php+javascript实现二级级联菜单的制作


出处:互联网   整理: 软晨网(RuanChen.com)   发布: 2009-09-13   浏览: 151 ::
收藏到网摘: n/a

二级级联菜单在我去年的时候就用asp+js做过,而现在忽然拿出来再做的时候我发现我忘记了,而且原来用asp写的程序都找不到了,真晕[emot]sweat[/emot],于是到网上搜,找了半天,我发现网上的写法各异,而且都特别复杂,这么一个二级级联菜单,有必要弄这么复杂吗?于是自己想重新写一个简单的。在经过半个小时左右的思考后,我完成了二级级联菜单的设计和制作。
大体思路是这样的:为了不让先前的页面刷新,我用iframe潜入了一个二级子页面,用来读取数据库中的数据,最后把想要的数据传递给父级页面,完成数据的选择和转移。
主要程序代码如下(部分代码有改动,但不影响功能):
父页面reg.html:
<iframe src=”city.php” width=”300″ height=”22″ frameborder=”0″ scrolling=”no”></iframe> <input name=”city” type=”hidden” id=”city” value=”" />
子页面city.php:
<script language=”javascript” type=”text/javascript”>
function goto(n){
this.location.href=”city.php?sh_id=”+n;
}
</script>
<select name=”sh” onchange=”goto(this.value)”>
<option>请选择所在省市</option>
<?php
include_once(”db.php”);
$sql=”select * from province order by sh_id asc”;
$result=mysql_query($sql);
while($row=mysql_fetch_assoc($result)){
?>
<option value=”<? echo $row[”sh_id”];?>” <? if($_GET[”sh_id”]==$row[”sh_id”]){echo 'selected=”selected”‘;}?>><? echo $row[”sh_name”];?></option>
<?php
}
?>
</select>
<select name=”city” onchange=”parent.document.getElementById('city').value=this.value”>
<option>选择你所在的城市</option>
<?php
if(!empty($_GET[”sh_id”])){
//echo “ok”;
$sql=”select * from city where sh_id=”.$_GET[”sh_id”].” order by city_id asc”;
$result=mysql_query($sql);
while($row=mysql_fetch_assoc($result)){
?>
<option value=”<? echo $row[”city_name”];?>”><? echo $row[”city_name”];?></option>
<?php
}
}
?>
</select>