1. 程式人生 > 程式設計 >JavaScript實現聯動選單特效

JavaScript實現聯動選單特效

一篇關於JavaScript特效的文章,今天給大家帶來聯動選單特效,這可能是一個系列哦!

效果圖

和以前一樣,先發效果圖,然後在進行講解。

程式碼

<!DOCTYPE html>
<html>
<head>
 <meta charset="utf-8">
 <meta http-equiv="X-UA-Compatible" content="IE=edge">
 <title></title>
 <link rel="stylesheet" href="">
</head>
<body>
 <h1>聯動選單</h1>
 <select id="province" onchange="ld();">
  <option value="-1">請選擇</option>
  <option value="0">安徽</option>
  <option value="1">浙江</option>
 </select>
 <select id="city">

 </select>
</body>
<script>
 //定義地區陣列
 var area = [
  ['安慶','黃山','合肥'],['杭州','溫州','寧波']
 ];
 //聯動函式
 function ld(){
   var province = document.getElementById('province');//找到省物件
   var city = document.getElementById('city');//找到市物件
   var opt = '';
   //如果是請選擇,就顯示空,並結束函式
   if(province.value == -1){
   city.innerHTML = opt;
   return ;
   }
   for(var i = 0,len = area[province.value].length;i < len;i++){
   opt += '<option value="'+i+'">'+area[province.value][i]+'</option>';
   }
   city.innerHTML = opt;
 }
</script>
</html>

功能講解

首先建立好頁面,然後讓省下拉框響應onchange事件,onchange事件響應的條件是下拉框的值發生改變時,這裡我讓onchange事件響應到ld函式中。此外我還定義了一個地區的二維陣列,然後查詢dom物件,根據省下拉框的值來查詢是二維陣列中的那一行資料,然後迴圈該地區城市來拼接列表項,最後新增到市的下拉框中。

以上就是本文的全部內容,希望對大家的學習有所幫助,也希望大家多多支援我們。