js实现城市级联菜单的2种方法

本文实例为大家分享了js实现城市级联菜单的具体代码,供大家参考,具体内容如下

方法一:用switch方法判断。

<!DOCTYPE html>
<html lang="en">
<head>
  <meta charset="UTF-8">
  <title>Title</title>
  <script type="text/javascript">
    function changeCity() {

      var x=['牛奶','豆浆','油条'];
      console.log(x.join(','));

      var y=[33,22,66,12];
      console.log(y.sort());

      //如果选择的是河南 在城市中: 洛阳 ,驻马店
      //如果选择的是河北 在城市中: 石家庄 ,保定
      var province = document.getElementById('selProvince');
      var city = document.getElementById('selCity');
      //在添加城市前,先清空上一次添加的城市
      city.length = 1;
      switch (province.value) {
        case '河南省':
          var op1 = new Option('洛阳', '洛阳');
          var op2 = new Option('驻马店', '驻马店');
          city.add(op1, null);
          city.add(op2, null);
          break;
        case '河北省':
          var op1 = new Option('石家庄', '石家庄');
          var op2 = new Option('保定', '保定');
          city.add(op1, null);
          city.add(op2, null);
          break;
      }
    }
  </script>
</head>
<body>
<form action="" name="myform">
  <select id="selProvince" onchange="changeCity( )">
    <option>--选择省份--</option>
    <option value="河南省">河南省</option>
    <option value="河北省">河北省</option>
  </select>
  <select id="selCity">
    <option>--选择城市--</option>
  </select>
</form>
</body>
</html>

方法二:用if进行判断。

<!DOCTYPE html>
<html lang="en">
<head>
  <meta charset="UTF-8">
  <title>Title</title>
  <script>
    function chagecity() {
      var citylist = [];
      citylist['四川省'] = ['成都市', '郫都区'];
      citylist['广东省'] = ['深圳市', '东莞市'];
      var provinceV = document.getElementById("province").value;
      var city = document.getElementById("city");
      city.length = 1; //清除当前city中的选项
//        for (var i in citylist){
//          if (i == provinceV){
//            for (var j in citylist[i]){
//              citylist.add(new Option(citylist[i][j],citylist[i][j]),null);
//            }
//          }
//        }
      for (var i in citylist) {
        if (i == provinceV) {//判断i是不是等于province中的值
          for (var j in citylist[i]) {//遍历citylist数组
            var op = new Option(citylist[i][j], citylist[i][j]);//把定义好的数据添加到city中
            city.add(op, null);
          }
        }
      }

    }
  </script>
</head>
<body>
<form action="">
  <select name="" id="province" onchange="chagecity()">
    <option value="四川省">四川</option>
    <option value="广东省">广东</option>
  </select>
  <select id="city">
    <option value="选择城市">选择城市</option>
  </select>
</form>
</body>
</html>

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持我们。

(0)

相关推荐

  • 前台JS(jquery ajax)调用后台方法实现无刷新级联菜单示例

    前台用AJAX直接调用后台方法,老有人发帖提问,没事做个示例 CasMenu.aspx页面: 复制代码 代码如下: <%@ Page Language="C#" AutoEventWireup="true" CodeFile="CasMenu.aspx.cs" Inherits="_Default" %> <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Tr

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

    大体思路是这样的:为了不让先前的页面刷新,我用iframe潜入了一个二级子页面,用来读取数据库中的数据,最后把想要的数据传递给父级页面,完成数据的选择和转移. 主要程序代码如下(部分代码有改动,但不影响功能): 父页面reg.html: <iframe src="city.php" width="300″ height="22″ frameborder="0″ scrolling="no"></iframe> &

  • ExtJS 设置级联菜单的默认值

    前言 ExtJS在修改这样的页面上赋值是很方便的,在正文中1.2.1代码中可以看出,一行代码就可以搞定,但这是对于普通控件而言,如文本框.对于ComboBox可没这么简单... 版本 Ext JS Library 3.0.0 正文 一.问题 1.1 截图 1.2 代码 1.2.1 前端代码 复制代码 代码如下: <script type="text/javascript"> // function ExtStore(url) { return new Ext.data.St

  • js实现的全国省市二级联动下拉选择菜单完整实例

    本文实例讲述了js实现的全国省市二级联动下拉选择菜单.分享给大家供大家参考.具体如下: 运行效果截图如下: 在线演示地址如下: http://demo.jb51.net/js/2015/js-province-city-cho-menu-codes/ 具体代码如下: <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-

  • js实现网页多级级联菜单代码

    本文实例讲述了js实现网页多级级联菜单.分享给大家供大家参考.具体如下: 这是大家在网页上经常会见到的级联菜单特效,不过这一个代码是由JS来实现,将级联菜单中的内容保存在了JS数组中,为了页面美观,本次还美化了一下表格边框,整体看上去更和谐实用了,多级的下拉菜单对网页设计来说比较实用. 运行效果如下图所示: 在线演示地址如下: http://demo.jb51.net/js/2015/js-table-select-menu-style-codes/ 具体代码如下: <!DOCTYPE HTML

  • JavaScript实现级联菜单的方法

    本文实例讲述了JavaScript实现级联菜单的方法.分享给大家供大家参考.具体实现方法如下: <html> <head> <title>test</title> <script type="text/javascript"> function f() { var sel=document.getElementById("country"); var sel2=document.getElementById

  • js 使用form表单select类实现级联菜单效果

    用例如下: 复制代码 代码如下: <form name="form1" method="POST" action="--WEBBOT-SELF--"> <select id="select1" onchange="select1onchange()"> <option value="1">1</option> <option valu

  • javascript实现二级级联菜单的简单制作

    本文实例讲述了javascript实现二级级联菜单的简单制作方法.分享给大家供大家参考.具体如下: 运行效果截图如下: 具体代码如下: <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> <html> <head> <title></title> <meta http-equiv="pragma" content="

  • Ajax+Json 级联菜单实现代码

    第一个下拉框: 复制代码 代码如下: <select id="select" name="rawfoodBasic.category" onchange="doChange(this.value);"> //第一个下拉框里的值 </select> 第二个下拉框: 复制代码 代码如下: <select id="subSelect" name="rawfoodBasic.absorb&quo

  • js出生日期 年月日级联菜单示例代码

    现在世界通用的公历(阳历)也经过一个长期演变的过程.我们先看,公历每个月的日数是固定的:"七前单大,八后双大".也就是说,一.三.五.七.八.十.腊月(十二月)是31天,四.六.九.十一月是30天,只有二月,平年28天,闰年29天. 复制代码 代码如下: <%@ Page Language="C#" AutoEventWireup="true" CodeBehind="WebForm1.aspx.cs" Inherits

随机推荐