整合營銷服務商

          電腦端+手機端+微信端=數據同步管理

          免費咨詢熱線:

          JavaScript 二級地址聯動

          JavaScript 二級地址聯動
          <!DOCTYPE html>
          <html>
          <head>
          <meta http-equiv="Content-Type" content="text/html;charset=UTF-8" />
          <title>網頁標題</title>
          <meta name="keywords" content="關鍵字列表" />
          <meta name="description" content="網頁描述" />
          <link rel="stylesheet" type="text/css" href="" />
          <style type="text/css"></style>
          <script type="text/javascript">
          var arr_pro=["請選擇省/城市","北京市","上海市","天津市","重慶市","深圳市","廣東省","河南省"];
          var arr_city=[
          ["請選擇城市/地區"],
          ["東城區","西城區","朝陽區","宣武區","昌平區","大興區","豐臺區","海淀區"],
          ['寶山區','長寧區','豐賢區', '虹口區','黃浦區','青浦區','南匯區','徐匯區','盧灣區'],
          ['和平區', '河西區', '南開區', '河北區', '河東區', '紅橋區', '塘古區', '開發區'],
          ['俞中區', '南岸區', '江北區', '沙坪壩區', '九龍坡區', '渝北區', '大渡口區', '北碚區'],
          ['福田區', '羅湖區', '鹽田區', '寶安區', '龍崗區', '南山區', '深圳周邊'],
          ['廣州市','惠州市','汕頭市','珠海市','佛山市','中山市','東莞市'],
          ['鄭州市']
          ];
          
          //分析思路
          //1.當頁面加載完成后
          //2.獲取id=pro和id=city這兩個對象
          //3.給id=pro這個對象 增加長度 它的長度是由arr_pro這個數組的長度所決定的
          //4.將arr_pro數組中的每一個元素寫入對應的option中
          //5.給id=pro這個對象綁定onchange事件
          //6.獲取到選中的下標
          //7.去arr_city中找對應二維數組的長度 然后將它的長度賦值給id=city這個對象
          //8.將對應的二維數組中的每一個元素寫入到option中
          //1.當頁面加載完成后
          window.onload=function(){
          //2.獲取id=pro和id=city這兩個對象
          var pro_obj=document.getElementById("pro");
          var city_obj=document.getElementById("city");
          //3.給id=pro這個對象 增加長度
          var arr_length=pro_obj.options.length=arr_pro.length;
          //循環arr_pro這個數組 然后將這個數組中的每一個數組元素寫入對應的option中
          for(var i=0;i<arr_length;i++){
          pro_obj.options[i].text=arr_pro[i];
          }
          
          //5.給id=pro這個對象綁定onchange事件
          pro_obj.onchange=function(){
          var selIndex=this.selectedIndex; //獲取選中的下標
          //給city_obj這個對象添加arr_city這個數組對應的長度
          var city_length=city_obj.options.length=arr_city[selIndex].length;
          //循環arr_city這個數組 然后將對應的每個數組元素寫入到對應的option中
          for(var i=0;i<city_length;i++){
          city_obj.options[i].text=arr_city[selIndex][i];
          
          }
          }
          }
          
          </script>
          </head>
          <body>
          <select id="pro"></select>
          <select id="city">
          <!--為城區下拉列表設置默認選項-->
          <option>請選擇城市/地區</option>
          </select>
          </body>
          </html>
          

          文介紹如何實現select下拉選項的聯動效果,用戶及部門信息一般是通過后端讀取數據庫返回的,用戶一般都會屬于某個部門,它們之間大多通過某個相同的ID進行關聯,那么想當然地在前端選擇用戶時自然希望能夠自動帶出部門信息,避免多余的用戶操作。



          以上面的gif展示為例,要實現申請人和申請人部門的聯動,必須要找到它們之間的關聯,這里就是部門ID。

          申請人信息中一定帶有部門ID信息,我們可以在前端展現時,將申請人的部門ID信息寫入到option中的data屬性中,然后在js中跟蹤申請人的選擇改變事件,就可以獲取到選中option的data值。

          接著再遍歷申請人部門的option元素,只要option的value值(value為申請人部門的ID)和選中申請人的部門ID相同,就設置該option為選中狀態,這樣就實現了自動聯動申請人部門。

          <!DOCTYPE html>
          
          <html lang="en">
          
          <head>
          
              <meta charset="UTF-8">
          
              <meta http-equiv="X-UA-Compatible" content="IE=edge">
          
              <meta name="viewport" content="width=device-width, initial-scale=1.0">
          
              <title>JavaScript實現select聯動</title>
          
          </head>
          
          <body>
          
              <h1>JavaScript實現select聯動</h1>
          
              <div>
          
                  <label for="user_name" class="form-label">申請人</label>
          
                  <!-- onchange跟蹤select的變化事件,并將元素id傳給update_user_dept -->
          
                  <select id="user_name" name="user_name" onchange="update_user_dept(this.id)">
          
                      <option value="">請選擇...</option>
          
                      <!-- option中的data值記錄申請人部門ID -->
          
                        <option value="張三" data="001">張三</option>
          
                        <option value="李四" data="002">李四</option>
          
                        <option value="王二麻子" data="003">王二麻子</option>
          
                  </select>
          
            
          
                  <label for="user_dept" class="form-label">申請人部門</label>
          
                  <select id="user_dept" name="user_dept">
          
                      <option value="">請選擇...</option>
          
                          <option value="002">財務部</option>
          
                          <option value="001">人力部</option>
          
                          <option value="003">工程部</option>
          
                  </select>
          
              </div>
          
              <script src="./demo.js"></script>
          
          </body>
          
          </html>

          在demo.js定義select改變事件的處理方法update_user_dept

          果您覺得該文章對您有幫助,讓更多人受用,請關注“鍵盤碼農”,轉發該文章。謝謝您的支持!

          今天跟大家寫了一份js的聯動全選的源碼,代碼少,清晰易懂。

          效果是這樣的:

          點擊全選下面的就會被全部全選,或者下面的被一一選擇,全選按鈕也會被選中。運用復選框來實現的聯動全選的功能。

          點擊上面的復選框就會被全選

          Javascript:聯動全選

          當下放的復選框沒有被全選,最上面的全選按鈕未被選中

          復選框聯動全選js代碼實現:

          <!DOCTYPE html>

          <html>

          <head>

          <title></title>

          <meta charset="utf-8">

          <script type="text/javascript">

          window.onload=function ()

          {

          var oBtn1=document.getElementById('btn1');

          var oBox=document.getElementById('box');

          var oInputs=oBox.getElementsByTagName('input');

          oBtn1.onclick=function ()

          {

          if (oBtn1.checked==true) {

          for (var i=0; i < oInputs.length; i++) {

          oInputs[i].checked=true;

          }

          } else {

          for (var i=0; i < oInputs.length; i++) {

          oInputs[i].checked=false;

          }

          }

          }

          //點擊每一個input框

          for (var i=0; i < oInputs.length; i++) {

          oInputs[i].onclick=function ()

          {

          var n=0;

          for (var i=0; i < oInputs.length; i++) {

          if (oInputs[i].checked==true) {

          n++;

          }

          }

          if (n==oInputs.length) {

          oBtn1.checked=true;

          } else {

          oBtn1.checked=false;

          }

          }

          }

          }

          </script>

          </head>

          <body>

          <h1>全選/全不選</h1>

          <input type="checkbox" id="btn1">

          <div id="box">

          <input type="checkbox" name="">

          <input type="checkbox" name="">

          <input type="checkbox" name="">

          <input type="checkbox" name="">

          </div>

          </body>

          </html>

          相對比較簡單,對于初學者應該有很好的幫助!請關注鍵盤碼農。后期繼續更新,如有什么看法請在下方評論。第一時間為您解答哦!


          主站蜘蛛池模板: 国产一区二区三区在线免费| 寂寞一区在线观看| 91一区二区三区| 国产一区美女视频| 日韩精品一区二区三区不卡| 亚洲视频一区二区三区四区| 国产福利一区二区三区在线视频 | 国产午夜精品一区理论片| 亚洲一区二区三区偷拍女厕 | 日本视频一区二区三区| 国产精品女同一区二区久久| 中文字幕av日韩精品一区二区 | 五月婷婷一区二区| 亚洲第一区视频在线观看| 成人在线观看一区| 国产成人精品一区二区三区无码| 久久一区二区三区免费播放| 亚洲一区二区三区四区视频 | 久久国产香蕉一区精品| 久久精品一区二区免费看| 亚洲AV无码一区二区三区在线| 无码人妻啪啪一区二区| 一区二区福利视频| 少妇精品久久久一区二区三区| 无码中文人妻在线一区| 内射女校花一区二区三区| 亚洲高清一区二区三区 | 中文字幕一区二区三区5566| 大香伊蕉日本一区二区| 精品一区二区三区在线视频| 国产成人午夜精品一区二区三区| 制服中文字幕一区二区 | 国产未成女一区二区三区| 国产日韩一区二区三免费高清| 亚洲一区二区三区久久| 中文字幕精品一区| 精品人妻一区二区三区四区| 国产精品夜色一区二区三区 | 无码人妻一区二区三区免费| 国产在线无码一区二区三区视频 | 91无码人妻精品一区二区三区L|