亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb

首頁 > 編程 > JavaScript > 正文

js使用DOM設置單選按鈕、復選框及下拉菜單的方法

2019-11-20 13:21:14
字體:
來源:轉載
供稿:網友

本文實例講述了js使用DOM設置單選按鈕、復選框及下拉菜單的方法。分享給大家供大家參考。具體實現方法如下:

1.設置單選按鈕

單選按鈕在表單中即<input type="radio" />它是一組供用戶選擇的對象,但每次只能選一個。每一個都有checked屬性,當一項選擇為ture時,其它的都變為false.

先貼上一個例子:

復制代碼 代碼如下:
<script type="text/javascript">
    function getChoice() {
 var oForm = document.forms["uForm1"];
 var aChoices = oForm.camera;
 for (i = 0; i < aChoices.length; i++) //遍歷整個單選項表
     if (aChoices[i].checked) //如果發現了被選中項則退出
  break;
 alert("相機品牌是:" + aChoices[i].value);
    }

    function setChoice(iNum) {
 var oForm = document.forms["uForm1"];
 oForm.camera[iNum].checked = true;
    }
</script>
<form method="post" name="uForm1" action="addInfo.aspx">
    相機品牌:
    <p>
 <input type="radio" name="camera" id="canon" value="Canon">
 <label for="canon">Canon</label>
    </p>
    <p>
 <input type="radio" name="camera" id="nikon" value="Nikon">
 <label for="nikon">Nikon</label>
    </p>
    <p>
 <input type="radio" name="camera" id="sony" value="Sony" checked>
 <label for="sony">Sony</label>
    </p>
    <p>
 <input type="radio" name="camera" id="olympus" value="Olympus">
 <label for="olympus">Olympus</label>
    </p>
    <p>
 <input type="radio" name="camera" id="samsung" value="Samsung">
 <label for="samsung">Samsung</label>
    </p>
    <p>
 <input type="radio" name="camera" id="pentax" value="Pentax">
 <label for="pentax">Pentax</label>
    </p>
    <p>
 <input type="radio" name="camera" id="others" value="其它">
 <label for="others">others</label>
    </p>
    <p>
 <input type="submit" name="btnSubmit" id="btnSubmit" value="Submit" class="btn">
    </p>
    <p>
 <input type="button" value="檢測選中對象" onclick="getChoice();">
 <input type="button" value="設置為Canon" onclick="setChoice(0);">
    </p>
</form>

單選按鈕在表單中即<input type="radio" />它是一組供用戶選擇的對象,但每次只能選一個。每一個都有checked屬性,當一項選擇為ture時,其它的都變為false.
從以上代碼中看出,id和name是不同的,一組單選按鈕中它們的name是相同的,只有一個被選中。id則是綁定<label>或者其它選擇作用的。

其中代碼中:檢查被選中對象的代碼是(當某一項的chcked值為ture時,遍歷結束)

復制代碼 代碼如下:
var oForm = document.forms["uForm1"];
var aChoices = oForm.camera;
for (i = 0; i < aChoices.length; i++) //遍歷整個單選項表
    if (aChoices[i].checked) //如果發現了被選中項則退出
 break;
alert("相機品牌是:" + aChoices[i].value);

2.設置多選框

與單選按鈕不同,復選框<input type="checkbox" />可以同時選中多個選項進行處理,郵箱中每條郵件之前的復選框就的典型的運用

復制代碼 代碼如下:
<script type="text/javascript">
    function checkbox() {
 var str = document.getElementsByName("hobby");
 var objarray = str.length;
 var chestr = "";
 
 for (j = 0; j < objarray; j++) {
     if (str[j].checked == true) {
  chestr += str[j].value + ",";
     }
 }
 if (chestr == "") {
     alert("請先選擇一個愛好~!");
 } else {
     alert("您先擇的是:" + chestr);
 }
    }

    function changeBoxes(action) {
 var oForm = document.forms["myForm1"];
 var oCheckBox = oForm.hobby;       
 for (var i = 0; i < oCheckBox.length; i++) //遍歷每一個選項
     if (action < 0) //反選
  oCheckBox[i].checked = !oCheckBox[i].checked;
     else //action為1是則全選,為0時則全不選
  oCheckBox[i].checked = action;
    }
</script>

<form method="post" name="myForm1" action="addInfo.aspx">
    喜歡做的事:
    <p>
 <input type="checkbox" name="hobby" id="ball" value="ball">
 <label for="ball">打球</label>
    </p>
    <p>
 <input type="checkbox" name="hobby" id="TV" value="TV">
 <label for="TV">看電視</label>
    </p>
    <p>
 <input type="checkbox" name="hobby" id="net" value="net">
 <label for="net">上網</label>
    </p>
    <p>
 <input type="checkbox" name="hobby" id="book" value="book">
 <label for="book">看書</label>
    </p>
    <p>
 <input type="checkbox" name="hobby" id="trip" value="trip">
 <label for="trip">旅游</label>
    </p>
    <p>
 <input type="checkbox" name="hobby" id="music" value="music">
 <label for="music">音樂</label>
    </p>
    <p>
 <input type="checkbox" name="hobby" id="others" value="其它">
 <label for="others">其它</label>
    </p>
    <p>
 <input type="button" value="全選" onclick="changeBoxes(1);" />
 <input type="button" value="全不選" onclick="changeBoxes(0);" />
 <input type="button" value="反選" onclick="changeBoxes(-1);" />
 <input type="button" value="提交"  onclick="checkbox()" />
    </p>
</form>

復選框原理利用checked屬性布爾值進行確定,全選和不全選可以采用0和1的方式傳遞參數。

3.下拉菜單

下拉菜單<select>是比較常用的表單元素。當它的下拉為單選時,和單選按鈕<input type="radio" />功能一樣,當下拉菜單為多選時multiple="multiple時,功能相當復選框,但所占面積遠小于復選框。

下拉菜單的常用屬性:

屬性 說明
length 表示選項<option>個數
selected 布爾值,表示<option>是否被選中
SelectedIndex 被選中選項的序列號,如果沒有選項被選中則為-1,對于多選下拉菜單而言,返回第一個被選中
的序號,從0開始計數
text 選項的文本
value 選項的值
type 下拉菜單的類型,單選返回select-one,多選返回select-multiple
options 獲取選項的數組 ,例如:oSelectBox.options[2],表示下拉菜單oSelectBox第三項
  
①. 下拉菜單獲取單選值
復制代碼 代碼如下:
<script language="javascript">
    function checkSingle() {
 var oForm = document.forms["myForm1"];
 var oSelectBox = oForm.constellation;
 var iChoice = oSelectBox.selectedIndex; //獲取選中項
 alert("您選中了" + oSelectBox.options[iChoice].text);
    }
</script>

<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>

②. 下拉菜單為多選時,取值

復制代碼 代碼如下:
<script type="text/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>

<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>

③. 通用取值(下拉單選和多選的情況)

復制代碼 代碼如下:
<script language="javascript">
    function getSelectValue(Box) {
 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>

<form method="post" name="myForm1">
    星座:
    <p>
 <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="查看選項" />
    </p>
    <p>
 <select id="constellation2" name="constellation2" multiple="multiple" style="height:120px;">
     <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>
 <input type="button" onclick="getSelectValue('constellation2')" value="查看選項" />
    </p>
</form>

希望本文所述對大家的javascript程序設計有所幫助。

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb
亚洲成人黄色网| 少妇高潮久久77777| 国产精品色午夜在线观看| 日韩黄色高清视频| 亚洲乱亚洲乱妇无码| 亚洲一区999| 国产在线视频不卡| 成人美女av在线直播| 亚洲免费人成在线视频观看| 欧美—级a级欧美特级ar全黄| www.日韩免费| 青草青草久热精品视频在线观看| 日本在线观看天堂男亚洲| 中文字幕欧美国内| 精品电影在线观看| 日韩av电影免费观看高清| 久久久久久久久久久91| 高跟丝袜欧美一区| 日本精品久久中文字幕佐佐木| 黄色一区二区三区| 国产精品18久久久久久麻辣| 国产亚洲精品久久久久久牛牛| 日本中文字幕成人| 中文字幕久热精品视频在线| 亚洲色图美腿丝袜| 九色精品免费永久在线| 亚洲国产精品va在线观看黑人| 日韩av在线一区二区| 国产精品白丝av嫩草影院| 欧美性视频网站| 日韩中文在线观看| 久久五月天综合| 久久精品福利视频| 在线观看欧美日韩国产| 亚洲无亚洲人成网站77777| 亚洲一区二区三区xxx视频| 国产精品一二区| 久久久久久久香蕉网| 久久久国产精品x99av| 中文字幕日韩精品有码视频| 亚洲欧美色图片| 国产成人精品在线播放| 国产精品人成电影| 91免费版网站入口| 国产精品直播网红| 欧美专区福利在线| 国产午夜一区二区| 亚洲国产精品免费| 欧美国产日韩一区| 欧美激情亚洲一区| 日韩一区视频在线| 性金发美女69hd大尺寸| 在线播放日韩精品| 欧美精品videossex性护士| 久久理论片午夜琪琪电影网| 欧美日韩中文在线观看| 国产精品男人爽免费视频1| 在线观看免费高清视频97| 欧美黑人狂野猛交老妇| 庆余年2免费日韩剧观看大牛| 国产免费成人av| 欧美刺激性大交免费视频| 国产精品美女在线观看| 51ⅴ精品国产91久久久久久| 黄色91在线观看| 怡红院精品视频| 国产精品久久久久久久美男| 精品丝袜一区二区三区| 亚洲视频在线观看免费| 97国产精品久久| 国产成人涩涩涩视频在线观看| 国产精品com| 亚洲丝袜在线视频| 美日韩精品免费观看视频| 亚洲午夜精品视频| 欧美色视频日本高清在线观看| 欧美电影免费观看| 成人深夜直播免费观看| 亚洲成人免费在线视频| 久久久亚洲国产天美传媒修理工| 一二美女精品欧洲| 国产精品一区二区三| 久久久久久一区二区三区| 国产日韩欧美另类| 国产美女搞久久| 福利视频导航一区| 美女久久久久久久久久久| 国产精品羞羞答答| 欧美日韩免费网站| 久久久久久久久91| 亚洲xxxx18| 欧美视频在线视频| 精品香蕉一区二区三区| 亚洲专区在线视频| 国产精品激情av电影在线观看| 欧美日韩免费区域视频在线观看| 色爱av美腿丝袜综合粉嫩av| 亚洲天堂开心观看| 欧美怡春院一区二区三区| 久久久91精品| 亚洲加勒比久久88色综合| 97在线视频免费播放| 亚洲人成电影网站色xx| 日韩免费黄色av| 亚洲精品国产综合久久| 欧美性视频精品| 久久精品亚洲热| 亚洲精品短视频| 亚洲激情视频在线| 91免费国产网站| 国产亚洲精品美女久久久久| 亚洲摸下面视频| 日韩一区二区欧美| 亚洲自拍偷拍福利| 国产成人jvid在线播放| 亚洲在线一区二区| 日本高清视频一区| 亚洲精品国产精品国产自| 久久久久久久久久国产| 亚洲精品久久在线| 日韩免费观看在线观看| 国内精品久久久久伊人av| 日韩欧美一区二区三区| 色综合伊人色综合网站| 日韩中文在线中文网三级| 亚洲а∨天堂久久精品9966| 国产成人在线一区| 欧美日韩激情美女| 成人h片在线播放免费网站| 欧美性理论片在线观看片免费| 精品国产一区二区三区久久| 国产性猛交xxxx免费看久久| 欧美激情精品久久久久久| 亚洲免费一在线| 日韩欧美在线观看视频| 8090理伦午夜在线电影| 亚洲国语精品自产拍在线观看| 国产精品一区二区三区成人| 国产欧美日韩高清| 国产精品成人aaaaa网站| 免费91在线视频| 日韩精品中文字幕在线播放| 成人在线小视频| 91色视频在线观看| 欧美激情乱人伦一区| 国产日韩av在线播放| 亚洲国产女人aaa毛片在线| 亚洲免费电影在线观看| 国产精品一区二区在线| 欧美黑人xxxx| 欧美一区二区大胆人体摄影专业网站| 国产亚洲精品美女久久久久| 国产精品国产福利国产秒拍| 国产不卡一区二区在线播放| 91成人在线观看国产| 国产一区欧美二区三区| 日韩毛片在线看| 亚洲天堂av女优| 日韩在线中文字幕| 92国产精品久久久久首页| 欧美精品久久久久久久久| 最近2019中文字幕在线高清| 亚州精品天堂中文字幕| 亚洲人永久免费|