javascript實現簡單的省市區三級聯動

來源:互聯網
上載者:User

javascript實現簡單的省市區三級聯動

   本文給大家反映的是javascript實現的簡單的省市區三級聯動特效,不需要訪問後台伺服器端,不使用Ajax,無重新整理,純JS實現的省市區三級聯動。當省市區資料變動是只需調正js即可。

  當我們註冊一個網站,會看到省市區三級聯動,下面簡單介紹一下

  ?

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

19

20

21

22

23

24

25

26

27

28

29

30

31

32

33

34

35

36

37

38

39

40

41

42

43

44

45

46

47

48

49

50

51

52

53

54

55

56

57

58

59

60

61

62

63

64

65

66

67

68

69

70

71

72

73

74

75

76

77

78

79

80

81

82

83

84

85

86

87

88

89

90

91

92

93

94

95

96

97

98

99

100

101

102

103

104

105

106

107

108

109

110

111

112

113

114

115

116

117

118

119

120

121

122

123

124

<!doctype html>

<html lang="en">

<head>

<meta charset="UTF-8">

<meta name="Generator" content="EditPlus®">

<meta name="Author" content="">

<meta name="Keywords" content="">

<meta name="Description" content="">

<title>Document</title>

</head>

<body>

<select id="province" onChange="ck()" >

<option>--請選擇--</option>

</select>

<select id="city">

<option>--請選擇--</option>

</select>

<select id="san">

<option>--請選擇--</option>

</select>

</body>

<script type="text/javascript">

//======================================第一種方法:擷取省市二串聯功能表=============================

//擷取省的id

var prame= document.getElementById("province");

var city= document.getElementById("city");

var san= document.getElementById("san");

//建立省市數組

var cityList=new Array();

//建立另一個數組

var zushu=new Array;

cityList['江西省'] = ['南昌市','撫州市','上饒市','鷹潭市','豐城市','吉安市'];

cityList['河南省'] = ['鄭州市','洛陽市'];

cityList['湖北省'] = ['武漢市','宜昌市'];

cityList['福建省'] = ['福州市','三明市','佛山市'];

zushu['南昌市']=['南昌縣','青雲譜區','蓮塘鎮'];

zushu['撫州市']=['臨川區','雲山鎮','唱凱鎮'];

for(var i in cityList){

prame.add(new Option(i,i),null);

}

prame.onchange=function(){

var prame= document.getElementById("province").value;

var city= document.getElementById("city");

 

city.options.length=0;

for(var k in cityList[prame]){

city.add(new Option(cityList[prame][k],cityList[prame][k]),null);

}

}

city.onchange=function(){

var city= document.getElementById("city").value;

var san= document.getElementById("san");

 

san.options.length=0;

for(var k in zushu[city]){

san.add(new Option(zushu[city][k]),(zushu[city][k]),null);

}

}

</script>

<!--------------------------------第二種方法:三級聯動菜單----------------------

<script type="text/javascript">

 

//擷取省的id

var province=document.getElementById("province");

province.add(new Option("江西省","江西省"),null);

province.add(new Option("福建省","福建省"),null);

province.add(new Option("廣東省","廣東省"),null);

function ck(){

 

var city=document.getElementById("city");

var num=province.selectedIndex;

city.options.length=0;

 

switch(num){

case 1:

city.add(new Option("南昌市","南昌市"),null);

city.add(new Option("撫州市","撫州市"),null);

city.add(new Option("上饒市","上饒市"),null);

city.add(new Option("吉安市","吉安市"),null);

break;

 

case 2:

city.add(new Option("廈門市","廈門市"),null);

city.add(new Option("三明市","三明市"),null);

city.add(new Option("莆田市","莆田市"),null);

city.add(new Option("龍岩市","龍岩市"),null);

break;

 

case 3:

city.add(new Option("廣州市","廣州市"),null);

city.add(new Option("東莞市","東莞市"),null);

city.add(new Option("保定市","保定市"),null);

city.add(new Option("珠海市","珠海市"),null);

break;

}

 

var qu=document.getElementById("qu");

var num1=province.selectedIndex;

qu.options.length=0;

switch(num1){

case 1:

qu.add(new Option("臨川區","臨川區"),null);

qu.add(new Option("青雲譜區","青雲譜區"),null);

qu.add(new Option("南昌鎮","南昌鎮"),null);

qu.add(new Option("雲山鎮","雲山鎮"),null);

break;

 

case 2:

qu.add(new Option("保安縣","保安縣"),null);

qu.add(new Option("福田區","福田區"),null);

qu.add(new Option("將樂縣","將樂縣"),null);

qu.add(new Option("廈門區","廈門區"),null);

break;

 

case 3:

qu.add(new Option("廣上縣","光上縣"),null);

qu.add(new Option("西莞區","西莞區"),null);

qu.add(new Option("三海縣","三海縣"),null);

qu.add(new Option("廣島區","廣島區"),null);

break;

}

}

</script>-->

</html>

  以上所述就是本文的全部內容了,希望大家能夠喜歡。

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.