夢幻之旅

          DEBUG - 天道酬勤

             :: 首頁 :: 新隨筆 :: 聯系 :: 聚合  :: 管理 ::
            671 隨筆 :: 6 文章 :: 256 評論 :: 0 Trackbacks
          /*
          *Write by:惠萬鵬
          *Time    :2008-09-01
          *vision  :1.0
          */

          //-------------------------------------------------------------------------
          //
          a function of inint a select
          var GangSelect  = {
              
          /**
               *Description : this function initiates select of object
               
          */

              __initiateSelect : 
          function(aValueTexts, oSelect, sInitValue, isSort)
              
          {
                  
          if (isSort)
                  
          {
                      aValueTexts.sort();
                  }

                  
          /**  remove all options of select of object */
                  oSelect.length 
          = 0;
                  
          for (var i = 0; i < aValueTexts.length; i = i + 1)
                  
          {
                      
          var sValue = aValueTexts[i].substring(0
                          aValueTexts[i].indexOf(
          ":"));
                      
          var sText = aValueTexts[i].substring(
                          aValueTexts[i].indexOf(
          ":"+ 1, aValueTexts[i].length);
                      
          /** create element of option */
                      
          var oOption = document.createElement("option");
                      oOption.value 
          = sValue;
                      
          /** initiates a option*/
                      
          if (sValue == sInitValue)
                      
          {
                          oOption.selected 
          = true;
                      }

                      
          var oText = document.createTextNode(sText);
                      oOption.appendChild(oText);
                      oSelect.appendChild(oOption);
                  }

              }
          ,
              
              
          /**
               *this function of initiates the first select
               
          */

              __initFirtSelect : 
          function(sFirstValueTexts, 
                      sInitiateFirstSelectValue, sFirstSelectId)
              
          {
                  
          var aFirstValueTexts = sFirstValueTexts.split('|');
                  aFirstValueTexts.unshift('
          -1:請選擇');
                  
          var oFirstSelect = obj$(sFirstSelectId);
                  
          /** initiates select */
                  
          this.__initiateSelect(aFirstValueTexts, oFirstSelect, 
                      sInitiateFirstSelectValue, 
          false);
              }
          ,
              
              
          /**
               *this function of init the second select
               
          */

              __initSecondSelect : 
          function(sSecondValueTexts, 
                      sInitiateSecondSelectValue, sFirstSelectId, sSecondSelectId)
              
          {
                  
          var sFirstSelectedValue = obj$(sFirstSelectId).value;
                  
          var aTemp = new Array();
                  
                  
          var aSecondValueTexts = sSecondValueTexts.split('|');
                  
          for (var k = 0; k < aSecondValueTexts.length; k = k + 1)
                  
          {
                      
          if (aSecondValueTexts[k].split('_')[0== sFirstSelectedValue)
                      
          {
                          aTemp.push(aSecondValueTexts[k]);
                      }

                  }

                  aTemp.unshift('
          -1:請選擇');
                  
          var oSecondSelect = obj$(sSecondSelectId);
                  
          this.__initiateSelect(aTemp, oSecondSelect, 
                      sInitiateSecondSelectValue, 
          false);
              }
          ,
              
              
          //this function of use in big select's onchange event
              Change : function (sSecondValueTexts,sFirstSelectId,sSecondSelectId)
              
          {
                  
          this.__initSecondSelect(sSecondValueTexts,"NOVALUE"
                      sFirstSelectId, sSecondSelectId);
              }
          ,
              
          //this function of init the big and small select
              Initiate : function(sFirstValueTexts,sSecondValueTexts,sFirstSelectId,
                  sSecondSelectId,sInitiateFirstSelectValue, sInitiateSecondSelectValue)
              
          {
                     
          var initiateFirstValue = 'NOVALUE';
                     
          var initiateSecondValue = 'NOVALUE';
                  
          if(arguments.length == 5)
                  
          {
                      initiateFirstValue 
          = sInitiateFirstSelectValue;
                  }

                  
          else if(arguments.length == 6)
                  
          {
                         initiateFirstValue 
          = sInitiateFirstSelectValue;
                      initiateSecondValue 
          = sInitiateSecondSelectValue;
                     }

                     
          this.__initFirtSelect(sFirstValueTexts,
                      sInitiateFirstSelectValue,sFirstSelectId);
                     
          this.__initSecondSelect(sSecondValueTexts,sInitiateSecondSelectValue,
                         sFirstSelectId,sSecondSelectId);
              }

          }
          ;
          posted on 2008-09-02 13:46 HUIKK 閱讀(825) 評論(1)  編輯  收藏 所屬分類: JavaScript

          評論

          # re: js 二級聯動菜單 2009-09-07 18:15 惠萬鵬
          var departmentIdNames = ":------請選擇-----|1:部門1|2:部門2";
          var positionIdNames = "_:------請選擇-----|1_1:職位1|1_2:職位2|2_1:職位4|2_2:職位4|2_2:職位5";
          function changePosition()
          {
          GangSelect.Change(positionIdNames,"department","position");
          }
          GangSelect.Initiate(departmentIdNames,positionIdNames,'department','position','','');  回復  更多評論
            

          主站蜘蛛池模板: 同心县| 黎城县| 平武县| 巨鹿县| 萨迦县| 金华市| 云林县| 汉寿县| 玉树县| 永泰县| 新泰市| 璧山县| 贺兰县| 莱阳市| 旌德县| 桃江县| 启东市| 济阳县| 姜堰市| 灵寿县| 高台县| 全州县| 东阿县| 育儿| 紫金县| 江陵县| 朔州市| 项城市| 宝应县| 林周县| 昌图县| 綦江县| 永和县| 河南省| 全州县| 康乐县| 手游| 城步| 广灵县| 庄河市| 上蔡县|