找了很多个级联的菜单,都不好用,自己弄个简单点的,共享下,希望有朋友用得着

<?php

//建立表country,有三个字段Id,parentId,area.

$pro = $_POST['pre'];

$cit = $_POST['city'];

echo $pro;

echo $cit;

$link = mysql_connect("localhost","root","wanwei");

if (!$link)

   die("链接服务器失败.".mysql_error());

$db = mysql_select_db("aiiee",$link);

if(!$db)

   die("选择数据库失败.".mysql_error());

$str = "select * from country where parentId != 0";

mysql_query("set names 'gbk'");

$result = mysql_query($str,$link);

$rownum = mysql_num_rows($result);

$row = mysql_fetch_array($result);

?>

<script language="JavaScript">

var _option = new Array(); //建立一个一维数组 _option.



<?php

for($i=0;$i<$rownum;$i++){  

   echo "_option[".$i."] = new Array('".$row["area"]."',".$row["id"].",".$row["parentId"].")\n"; //用数组 _option 的元素建立二维数组,第一列是city的text,第二列是city自身Id,第三列是city的父级Id.

   $row = mysql_fetch_array($result);

}

?>



function ChangeSelect(SelfId){

    document.form_category.city.length = 0;  //初始化市级下拉列表长度为零.

        document.form_category.city.options[0] = new Option('==请选择市==','0'); //把市级下拉列表的第一个option设为0.

    for(i=0;i < _option.length;i++){ //在二维数组 _option 内循环,当第i行,第3列的值等于SelfId时,就用第i行,第1列的来建立city的option.

          if(_option[i][2] == SelfId){

             document.form_category.city.options[document.form_category.city.length] = new Option(_option[i][0],_option[i][1]);
//建立city的option.

          }       

        }

}



</script>

<form name="form_category" id="form_category" method="post" action="test.php">          

        <select name="pre" id="pre" onChange="ChangeSelect(this.value);">

         <option>==请选省/市==</option>                  

        <?php

         $rs_result = mysql_query("select * from country where parentId=0",$link);

         $row_num = mysql_num_rows($rs_result);

         $rs_row = mysql_fetch_array($rs_result);

         for($m=1;$m<=$row_num;$m++){

         ?>

          <option value="<?=$rs_row["id"]?>"><?=$rs_row["area"]?></option>

        <?php

          $rs_row = mysql_fetch_array($rs_result);

         }

         ?>               

        </select>

               

        <select name="city" id="city">        

      <option>==请选择市==</option>

        </select>       

        <input type="submit">                

</form>

<?php

mysql_close($link);

?>

php 二级级联菜单的更多相关文章

  1. Ajax实现动态的二级级联菜单

    今天花了点时间用Ajax实现了一个二级级联菜单.整理总结一下.为了把重点放在Ajax和级联菜单的实现上,本文省略了数据库建表语句和操作数据库的代码! 数据库建表语句就不帖出来了.主要有两张表,区域表: ...

  2. Excel操作之级联菜单

    设置级联菜单主要用的是excel的数据验证功能.下面以简单的设置城市选择框为例: 1.准备好数据 2.给所有省份起个名称(例如:省份),然后同样方法给每个省份所对应的城市以其省份命名,(例如:南京.苏 ...

  3. js进阶 9-12 js如何实现级联菜单 (章节测试)

    js进阶 9-12  js如何实现级联菜单 (章节测试) 一.总结 一句话总结: 1.js如何实现级联菜单 ? 二维数组,以第一级菜单的文本值做键,以对应的二级菜单选项的文本做值 2.用哪个属性可以获 ...

  4. JS实战 · 级联菜单选择省份和城市(两种)

    DOM编程步骤.思路 1.定义界面:      通过html标签将数据进行封装: 2.定义一些静态样式:      利用css: 3.需要动态地完成的和用户的交互:      a:明确事件源:     ...

  5. JS动态级联菜单

    JS动态级联菜单是前端常用的一个功能,特此抽时间研究了下,附上代码 <html> <head> <meta charset="utf-8" /> ...

  6. 前台JS(Jquery)调用后台方法 无刷新级联菜单示例

    前台用AJAX直接调用后台方法,老有人发帖提问,没事做个示例 下面是做的一个前台用JQUERY,AJAX调用后台方法做的无刷新级联菜单 http://www.dtan.so CasMenu.aspx页 ...

  7. 一款jquery编写图文下拉二级导航菜单特效

    一款jquery编写图文下拉二级导航菜单特效,效果非常简洁大气,很不错的一款jquery导航菜单特效. 这款jquery特效适用于很多的个人和门户网站. 适用浏览器:IE8.360.FireFox.C ...

  8. 使用json方式实现省市两级下拉级联菜单[原创]

    本文为博主原创,转载请注明. 首先看一下实现后的效果图: 当然,要完成这个实验,mysql必须与数据库连接,这里选用navicat for mysql这款软件,它与mysql的契合度是很高的,配置环境 ...

  9. jQuery制作右侧边垂直二级导航菜单

    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/ ...

随机推荐

  1. sphinx全文检索引擎

    今天刚刚学习了一下,就直接分享上去,有些还没有接触,如果有问题请指正,谢谢 sphinx是什么? Sphinx是一个全文检索引擎.主要为其他应用提供高速.低空间占用.高结果 相关度的全文搜索功能. S ...

  2. HDU 5556 最大独立集

    这题主要有了中间的一些连通块的限制,不太好直接用二分图最大独立集做.考虑到图比较小,可以作补图求最大团来求解. #include <iostream> #include <vecto ...

  3. 阿里云centos 安装和配置 DokuWiki

    安装 1) 添加虚拟主机:由于我的 阿里云CentOs服务器 安装了oneinstack的一键部署PHP.JAVA.Nginx等环境,所以域名配置很方便,照着文档一步一步做就可以了 cd /root/ ...

  4. 远程SSH连接服务与基本排错

    为什么要远程连接Linux系统?? 在实际的工作场景中,虚拟机界面或物理服务器本地的窗口都是很少能够接触到的,因为服务器装完系统后,都要拉到IDC机房托管,如果是购买了云主机,更碰不到服务器本地显示器 ...

  5. 最准确的单点登录SSO图示和讲解(有代码范例)|手把手教做单点登录(SSO)系列之二

    写第一篇博客<手把手教做单点登录(SSO)系列之一:概述与示例>,就获得了园子里朋友们热情的评论和推荐,感谢各位. 我那篇文章同时发了CSDN和博客园.对比一下,更感受到博客园童鞋们的技术 ...

  6. 遇见未知的CSS

    1.1 CSS中你可能会疑问的几个问题 1.1.1 在CSS中为什么要有层叠 在CSS中可能会有多个样式表同时影响同一个元素的某个属性,设计这个功能的主要原因有两个,解决模块化和作者.用户.用户代理样 ...

  7. CSS3特效----图片动态提示效果

    需掌握的知识点: 1.掌握两个HTML5新标签figure以及figcaption的用法 2.掌握transform的属性特点,并能熟练运用 3.学会通过transition及transform配合, ...

  8. 荣获MVP感想

    感言 最近特别忙,除了工作之外最开心的算是收到了MVP的奖杯,从到申请到审批通过也不过一个礼拜的时间,从去年就开始想着是否应该一试,通过和张善友大哥的沟通抱着试一试的忐忑结果意外惊喜通过了,由于每月申 ...

  9. Linux上bash的部分基础特性:

    命令补全: tab shell程序在接收到用户执行命令的请求,分析完成后,最左侧的字符串会被当做命令 命令查找机制: 查找内部命令: 根据PATH环境变量中设定的目录,自左而右逐个搜索目录下的文件名 ...

  10. Python数据类型和变量

    一.数据类型1.整型整型类型比较简单,就是我们数学中的正整数(1,2,520..).负整数(-2,-9..);与java不同的是,python中的整数可以无限大,而java的整数类型int为四个字节, ...