程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 編程語言 >> .NET網頁編程 >> ASP.NET >> ASP.NET基礎 >> ASP.NET服務器端控件RadioButtonList,DropDownList,CheckBoxList的取值、賦值用法

ASP.NET服務器端控件RadioButtonList,DropDownList,CheckBoxList的取值、賦值用法

編輯:ASP.NET基礎

這三個控件都有一個Items集合,可以用 RepeatLayout 和 RepeatDirection 屬性來控制列表的呈現形式。如果 RepeatLayout 的值為 Table,那麼將在表中呈現列表。如果設置成 Flow,那麼將在沒有任何表結構的情況下呈現列表。默認情況下,RepeatDirection 的值為 Vertical。將此屬性設置成 Horizontal 將會使列表水平呈現。

RadioButtonList:控件提供已選中一個選項的單項選擇列表(數據源單選)。與其他列表控件相似,RadioButtonList 有一個 Items 集合,其成員與列表中的每個項目相對應。

DropDownList:下拉列表選擇,對於有些形式的輸入,用戶必須從適用選項列表中選擇一個選項(下拉唯一選擇)。

CheckBoxList:多選列表,將數據源以橫向或縱向方式呈現給用戶,用戶可以進行多個item的選擇。

由於這三個控件是服務器端控件,需要在客戶端進行解析,下面有三個控件的服務器端、客戶端例子

服務器端
復制代碼 代碼如下:
<asp:RadioButtonList ID="RadioButtonList1" RepeatDirection="Horizontal" RepeatLayout="Flow"
            runat="server">
            <asp:ListItem Value="0">單選一</asp:ListItem>
            <asp:ListItem Value="1">單選二</asp:ListItem>
            <asp:ListItem Value="2">單選三</asp:ListItem>
        </asp:RadioButtonList>
        <br />
        <asp:CheckBoxList ID="CheckBoxList1" RepeatDirection="Horizontal" RepeatLayout="Flow"
            runat="server">
            <asp:ListItem Value="0">多選一</asp:ListItem>
            <asp:ListItem Value="1">多選二</asp:ListItem>
            <asp:ListItem Value="2">多選三</asp:ListItem>
        </asp:CheckBoxList>
        <br />
        <asp:DropDownList ID="DropDownList1" RepeatDirection="Horizontal" RepeatLayout="Flow"
            runat="server">
            <asp:ListItem Value="0">下拉選擇一</asp:ListItem>
            <asp:ListItem Value="1">下拉選擇二</asp:ListItem>
            <asp:ListItem Value="2">下拉選擇三</asp:ListItem>
        </asp:DropDownList>

經過浏覽器解析後

復制代碼 代碼如下:
<span id="RadioButtonList1">
      <input id="RadioButtonList1_0" type="radio" name="RadioButtonList1" value="0" /><label for="RadioButtonList1_0">單選一</label>
      <input id="RadioButtonList1_1" type="radio" name="RadioButtonList1" value="1" /><label for="RadioButtonList1_1">單選二</label>
      <input id="RadioButtonList1_2" type="radio" name="RadioButtonList1" value="2" /><label for="RadioButtonList1_2">單選三</label>
   </span>
        <br />
   <span id="CheckBoxList1">
      <input id="CheckBoxList1_0" type="checkbox" name="CheckBoxList1$0" value="0" /><label for="CheckBoxList1_0">多選一</label>
      <input id="CheckBoxList1_1" type="checkbox" name="CheckBoxList1$1" value="1" /><label for="CheckBoxList1_1">多選二</label>
      <input id="CheckBoxList1_2" type="checkbox" name="CheckBoxList1$2" value="2" /><label for="CheckBoxList1_2">多選三</label>
   </span>
        <br />
   <select name="DropDownList1" id="DropDownList1" RepeatDirection="Horizontal" RepeatLayout="Flow">
    <option value="0">下拉選擇一</option>
    <option value="1">下拉選擇二</option>
    <option value="2">下拉選擇三</option>
   </select>

對於這三個控件的操作無非就是取值和賦值,下面通過Jquery和.cs兩種方式進行操作

Jquery對三種控件進行操作

 1、RadioButtonList

   1)取值

復制代碼 代碼如下:
 $("#RadioButtonList1").change(function () {
   //彈出選中項的val值
                alert($("input[name='RadioButtonList1']:checked").val());
  //彈出選中項的text值
                alert($("input[name='RadioButtonList1']:checked+label").text())
  }); 

   2)賦值

復制代碼 代碼如下:
//默認選中第二項
var rbts = document.getElementsByName("RadioButtonList1");
            for (var i = 0; i < rbts.length; i++) {
                if (rbts[i].value == "1")
                    rbts[i].checked = "true";
            }

2、DropDownList

   1)取值

復制代碼 代碼如下:
 $("#DropDownList1").change(function () {
//彈出選中項的Val值
                alert($("#DropDownList1").val());
//彈出選中項的text值
                alert($("#DropDownList1 option:selected").text());
            });

    2)賦值

復制代碼 代碼如下:
//默認選中第二項
var ddls = $("#DropDownList1 option");
                        for (var i = 0; i < ddl.length; i++) {
                            if (ddl[i].value == "1") {
                                ddl[i].selected = "true";
                            }
                        }

3、CheckBoxList

     1)取值 

復制代碼 代碼如下:
$("#CheckBoxList1 > input").click(function () {
               var arrval = [];
                var val = "";
              $("#CheckBoxList1 :checkbox:checked").each(function () {
             //將選中項的值放進數組arrval
                    arrval.push($(this).val())
                })
            //將數組中的val值以‘,'進行連接
                val = arrval.join(',');
              //彈出所有選擇的項以,連接
                                alert(val);
                var arrtext = [];
                var text = "";
                $("#CheckBoxList1 :checkbox:checked").each(function () {
              //將選中項的text值放進arrtext數組中
                    arrtext.push($(this).next().html());
              //將數組中的數據用,進行連接
                    text = arrtext.join(",");
                })
             //彈出選中項的Text值
               alert(text);
                });

2)賦值

復制代碼 代碼如下:
   var cbks = $("#CheckBoxList1 input[type='checkbox']");
            for (var i = 0; i < cbks.length; i++) {
                if (cbks[i].value== "1"||cbks[i].value=="2") {
                    cbks[i].checked = "true";
                }
            }

  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved