整合營銷服務商

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

          免費咨詢熱線:

          JavaScript 設置和控制下拉菜單

          JavaScript 設置和控制下拉菜單

          拉菜單的屬性

          length 表示選項<option>的個數

          selected 布爾值,表示選項<option>是否被選中

          SelectedIndex 被選中的選項序號,如果沒有被選中則為-1,對于多選下拉菜單而言,返回被選中的第一個選項序號。從0開始計數

          text 選項的文本(它是option專有的屬性)

          value 選項的value值

          type 下拉菜單的類型。單選返回select-one,多選返回select-multiple

          options 獲取選項的數組,列如oSelectBox.options[2]表示下拉菜單oSelectBox中的第3項

          訪問選中項

          下拉菜單(單選):

          <html>
          <head>
          <title>下拉菜單,單選</title>
          <style>
          <!--
          form{
          padding:0px; margin:0px;
          font:14px Arial;
          }
          -->
          </style>
          <script language="javascript">
          function checkSingle(){
              var oForm=document.forms["myForm1"];
              var oSelectBox=oForm.constellation;
              var iChoice=oSelectBox.selectedIndex; //獲取選中項
              alert("您選中了" + oSelectBox.options[iChoice].text); //下拉菜單,單選
          }
          </script>
          </head>
          <body>
          <form method="post" name="myForm1">
          <label for="constellation">星座:</label>
          <p>
          <select id="constellation" name="constellation">
          <option value="Aries" selected="selected">白羊</option>
          <option value="Taurus">金牛</option>
          <option value="Gemini">雙子</option>
          <option value="Cancer">巨蟹</option>
          <option value="Leo">獅子</option>
          <option value="Virgo">處女</option>
          <option value="Libra">天秤</option>
          <option value="Scorpio">天蝎</option>
          <option value="Sagittarius">射手</option>
          <option value="Capricorn">摩羯</option>
          <option value="Aquarius">水瓶</option>
          <option value="Pisces">雙魚</option>
          </select>
          </p>
          <input type="button" onclick="checkSingle()" value="查看選項" />
          </form>
          </body>
          </html>

          下拉菜單(多選):

          <html>
          <head>
          <title>下拉菜單,多選</title>
          <style>
          <!--
          form{
          padding:0px; margin:0px;
          font:14px Arial;
          }
          p{
          margin:0px; padding:2px;
          }
          -->
          </style>
          <script language="javascript">
          function checkMultiple(){
          var oForm=document.forms["myForm1"];
          var oSelectBox=oForm.constellation;
          var aChoices=new Array();
          //遍歷整個下拉菜單
          for(var i=0;i<oSelectBox.options.length;i++)
          if(oSelectBox.options[i].selected) //如果被選中
          aChoices.push(oSelectBox.options[i].text); //壓入到數組中,可以用于單選的情況;
          alert("您選了:" + aChoices.join()); //輸出結果
          }
          </script>
          </head>
          <body>
          <form method="post" name="myForm1">
          <label for="constellation">星座:</label>
          <p>
          <select id="constellation" name="constellation" multiple="multiple" style="height:180px;">
          <option value="Aries">白羊</option>
          <option value="Taurus">金牛</option>
          <option value="Gemini">雙子</option>
          <option value="Cancer">巨蟹</option>
          <option value="Leo">獅子</option>
          <option value="Virgo">處女</option>
          <option value="Libra">天秤</option>
          <option value="Scorpio">天蝎</option>
          <option value="Sagittarius">射手</option>
          <option value="Capricorn">摩羯</option>
          <option value="Aquarius">水瓶</option>
          <option value="Pisces">雙魚</option>
          </select>
          </p>
          <input type="button" onclick="checkMultiple()" value="查看選項" />
          </form>
          </body>
          </html>

          通用的訪問下拉菜單選中項的方法:

          <script language="javascript">
          function getSelectValue(Box){ //Box參數select標簽的ID值
              var oForm=document.forms["myForm1"];
              var oSelectBox=oForm.elements[Box]; //根據參數相應的選擇下拉菜單
              if(oSelectBox.type=="select-one"){ //判斷是單選還是多選
              var iChoice=oSelectBox.selectedIndex; //獲取選中項
              alert("單選,您選中了" + oSelectBox.options[iChoice].text);
              }else{
              var aChoices=new Array();
              //遍歷整個下拉菜單
              for(var i=0;i<oSelectBox.options.length;i++)
              if(oSelectBox.options[i].selected) //如果被選中
              aChoices.push(oSelectBox.options[i].text); //壓入到數組中
              alert("多選,您選了:" + aChoices.join()); //輸出結果
              }
          }
          </script>

          函數使用方法:

          <select id="constellation1" name="constellation1">
          <option value="Aries" selected="selected">白羊</option>
          <option value="Taurus">金牛</option>
          <option value="Gemini">雙子</option>
          <option value="Cancer">巨蟹</option>
          <option value="Leo">獅子</option>
          <option value="Virgo">處女</option>
          <option value="Libra">天秤</option>
          <option value="Scorpio">天蝎</option>
          <option value="Sagittarius">射手</option>
          <option value="Capricorn">摩羯</option>
          <option value="Aquarius">水瓶</option>
          <option value="Pisces">雙魚</option>
          </select>
          <input type="button" onclick="getSelectValue('constellation1')" value="查看選項" />

          添加、替換、刪除選項

          通過構造函數Option()直接添加value、text等信息,相當方便

          var oOption=new Option(text,value,defaultSelected,selected)

          defaultSelected為布爾型值:1(true)設置下拉式表單默認值,

          selected為布爾值:1(true)表示被選中

          最后兩項默認值為0,如果不希望添加的選項被默認選中則可以忽略,添加選項時通常將<select>列表的第length項直接設置為新的選項,即在末尾增加。

          添加選項:

          <html>
          <head>
          <title>添加選項</title>
          <style>
          <!--
          form{padding:0px; margin:0px; font:14px Arial;}
          p{margin:0px; padding:3px;}
          input{margin:0px; border:1px solid #000000;}
          -->
          </style>
          <script language="javascript">
          function AddOption(Box){ //添加選項,參數為<select>標簽的ID值
              var oForm=document.forms["myForm1"];
              var oBox=oForm.elements[Box];
              var oOption=new Option("乒乓球","Pingpang");
              oBox.options[oBox.options.length]=oOption; //在菜單末尾添加選項
          }
          </script>
          </head>
          <body>
          <form method="post" name="myForm1">
          球類:
          <p>
          <select id="ball" name="ball" multiple="multiple">
          <option value="Football">足球</option>
          <option value="Basketball">籃球</option>
          <option value="Volleyball">排球</option>
          </select>
          </p>
          <input type="button" value="添加乒乓球" onclick="AddOption('ball');" />
          </form>
          </body>
          </html>

          替換選項

          如果下拉菜單中的序號為已經存在了的選項,添加時則會自動替換原有的選項

          oBox.options[iNum]=oOption;//替換iNum個選項

          <html>
          <head>
          <title>替換選項</title>
          <style>
          <!--
          form{padding:0px; margin:0px; font:14px Arial;}
          p{margin:0px; padding:3px;}
          input{margin:0px; border:1px solid #000000;}
          -->
          </style>
          <script language="javascript">
          function ReplaceOption(Box,iNum){ //替換選項,參數Box為<select>的ID值,iNum為替換的選項序號;
          var oForm=document.forms["myForm1"];
          var oBox=oForm.elements[Box];
          var oOption=new Option("乒乓球","Pingpang");
          oBox.options[iNum]=oOption; //替換第iNum個選項
          }
          </script>
          </head>
          <body>
          <form method="post" name="myForm1">
          球類:
          <p>
          <select id="ball" name="ball" multiple="multiple">
          <option value="Football">足球</option>
          <option value="Basketball">籃球</option>
          <option value="Volleyball">排球</option>
          </select>
          </p>
          <input type="button" value="籃球替換為乒乓球" onclick="ReplaceOption('ball',1);" />
          </form>
          </body>
          </html>

          添加選項到具體位置

          <html>
          <head>
          <title>添加到具體位置</title>
          <style>
          <!--
          form{padding:0px; margin:0px; font:14px Arial;}
          p{margin:0px; padding:3px;}
          input{margin:0px; border:1px solid #000000;}
          -->
          </style>
          <script language="javascript">
          function AddOption(Box,iNum){
          var oForm=document.forms["myForm1"];
          var oBox=oForm.elements[Box];
          var oOption=new Option("乒乓球","Pingpang");
          oBox.insertBefore(oOption,oBox.options[iNum]);
          }
          </script>
          </head>
          <body>
          <form method="post" name="myForm1">
          球類:
          <p>
          <select id="ball" name="ball" multiple="multiple">
          <option value="Football">足球</option>
          <option value="Basketball">籃球</option>
          <option value="Volleyball">排球</option>
          </select>
          </p>
          <input type="button" value="添加乒乓球" onclick="AddOption('ball',1);" />
          </form>
          </body>
          </html>

          以上代碼IE7中雖然在正確的位置插入了選項,但內容卻沒有顯示出來(bug問題)

          兼容性更好的代碼,使用方法與以上相同;

          <script language="javascript">
          function AddOption(Box,iNum){
              var oForm=document.forms["myForm1"];
              var oBox=oForm.elements[Box];
              var oOption=new Option("乒乓球","Pingpang");
              //兼容IE7,先添加選項到最后,再移動
              oBox.options[oBox.options.length]=oOption;
              oBox.insertBefore(oOption,oBox.options[iNum]);
          }
          </script>

          注意:IE9已經解決了bug問題

          刪除下拉菜單的選項:

          刪除下拉菜單中的某個選項時相對最簡單的,只需要將這個選項設置為null即可

          bBox.options[iNum]=null;

          avaweb

          在我們日常的javaweb開發過程中呢,會經常遇到獲取表單中的下拉菜單中的value以及他的text,下面我來教大家兩種方法。(推薦第二種哈~,希望大家多多評論點贊呀,上一篇文章中,各位猿媛光想著收藏,都看不到你們給我寫的評論,桑心~~)


          假如我們的select長這樣:

          <select id="myselect">

          <option value="1">test1</option>

          <option value="2" selected="selected">test2</option>

          <option value="3">test3</option>

          </select>

          第一種呢是用我們比較常見的JQuery

          var $selected=$("#myselect option").filter(":selected");

          獲取文本: $selected.text();

          獲取value: $selected.val();

          第二種呢當然是我們的原生js啦~~(推薦喲,收藏評論哈~)

          var e=document.getElementById("myselect");

          獲取文本:var text=e.options[e.selectedIndex].text;

          獲取value: e.value;

          我在后續的文章中,會分享更多更實用的開發小技巧給大家,希望大家多多關注!



          豬腳本(原飛豬腳本)以按鍵精靈教學為主,涉及UiBot,Python,Lua等腳本編程語言,教學包括全自動辦公腳本,游戲輔助腳本,引流腳本,網頁腳本,安卓腳本,IOS腳本,注冊腳本,點贊腳本,閱讀腳本以及網賺腳本等各個領域。想學習按鍵精靈的朋友可以添加金豬腳本粉絲交流群:554127455 學習路上不再孤單,金豬腳本伴你一同成長.

          1.什么是網頁元素特征字符串?

          請參考網頁特征字符串詳解,

          2.Html系列命令

          2.1.HtmlSelect命令

          1 HtmlSelect命令只能夠根據Select項的值來進行選擇,注意這里不是顯示在Select項上的文字,而是該項的value。

          一個典型的下拉框HTML代碼如下:

          <select name="city">

          <option value="1">北京</option>

          <option value="2">上海</option>

          <option value="3">廣州</option>

          </select>

          這里如果要選擇上海,需要選擇值為2的項;

          2)級聯的下拉列表組合。

          在有的網頁中,會有幾個級聯的下拉列表,后一個下拉框會隨前一個框的值變化而發生變化,典型的有注冊頁面上的省份城市選擇,HtmlSelect命令能夠觸發Onchange事件,會導致后一個下拉框值發生變化,但是如果執行腳本太快,而導致后一個未能選中正確的值,可以在前一個HtmlSelect后加上適當的延時;

          3)多選表單中的列表控件;有的列表支持多選,在有一些個求職網站中,職業是可以多選的,這時候可以用%將多個需要選擇的值連接起來傳遞給HtmlSelect命令實現多選;

          2.2.HtmlExists命令

          HtmlExists命令,能夠判斷指定特征的元素是否存在,并能夠返回具備該特征的元素的個數。這個命令能夠用來判斷某個元素是否存在,如果為0證明不存在;

          2.3.HtmlGet命令

          HtmlGet命令比較復雜,但是功能也非常強大,該命令具備兩個參數,第一個參數為獲取類型,目前支持的值如下所示:

          序號 值 適用對象

          1 text 得到指定元素的文本值,對應DOM屬性innerText

          2 html 得到指定元素內部的HTML代碼,對應DOM屬性innerHTML

          3 outerHtml 得到元素整體的HTML代碼,對應DOM屬性的outerHTML

          4 value 得到元素的Value值,用于獲取表單元素內部的值

          5 src 得到圖像元素的src屬性,用于IMG標簽對象

          6 href 得到鏈接元素的鏈接地址,用于A標簽

          7 …其他名稱 其他屬性,如果您使用的是合法的屬性名稱,就能夠返回對應的值。如何才是合法的屬性?請參閱HTML標準。

          第二個參數為特征字符串,如果匹配多個,只能返回第一個元素的值;

          例如,獲得淘寶貨物價格:

          Plugin price=Web.HtmlGet("text","id:id_Price")

          獲取某個表單文本的值

          Plugin email=Web.HtmlGet("value","name:Email")

          2.4.RunJS命令

          RunJS命令提供了直接運行Javascript的功能,如果您對JS非常熟悉,就能夠極大的擴展WQM的功能。

          RunJS命令支持兩中執行方式,第一個參數設置為0時,能夠執行一段沒有返回值的Javascript,

          例如:

          RunJS(0,"alert('hello');")

          第一個參數設置為1時,能執行一段js并返回由return語句返回的值,返回值為字符串類型;

          例如:返回Html文檔的title;

          RunJS(1,"var t=document.title;return t;")

          如果您分析到網頁中某個按鈕實際上就是執行了一個函數,例如

          <input type="Button" … />

          您就可以直接調用

          RunJS(0,"dosomething();")

          JQuery的支持,網頁按鍵精靈集成了Jquery1.3.2,為了不與其他JQ的庫發生沖突,使用了wqmjq來代替$操作符,如果您需要直接使用JQ來操作網頁,可使用wqmjq來執行Jquery語句:


          主站蜘蛛池模板: 一区二区三区视频网站| 韩国精品福利一区二区三区| 国产伦精品一区二区免费 | 国产一区高清视频| 一区二区三区精品视频| 国产麻豆精品一区二区三区| 中文字幕AV一区二区三区| 久久精品一区二区三区AV| 亚洲电影唐人社一区二区| 国产亚洲3p无码一区二区| 亚洲国产av一区二区三区| 亚洲中文字幕丝袜制服一区 | 国产91精品一区二区麻豆网站| 人妻无码第一区二区三区| 精品人体无码一区二区三区| 国精产品一区一区三区MBA下载 | 日本无码一区二区三区白峰美| 国产成人一区在线不卡 | 亚洲国产成人久久一区WWW| 精品一区二区视频在线观看| 国产伦一区二区三区高清| 国产一区二区影院| 精品一区二区三区在线播放| 成人精品一区二区户外勾搭野战| 日本不卡免费新一区二区三区| 国产乱码伦精品一区二区三区麻豆 | 久久精品国产第一区二区| 国产一区二区三区在线看片| 日韩伦理一区二区| 中文无码AV一区二区三区| 精品综合一区二区三区| 亚洲熟女一区二区三区| 精品视频一区二区三区四区| 国模精品一区二区三区| 天美传媒一区二区三区| 一区二区三区观看| 国产99精品一区二区三区免费| 在线观看国产一区亚洲bd| 国产成人精品一区二区三区| 一区二区国产精品| 国产一区二区在线看|