dropdownlist綁定和選中

最近在使用dropdownlist控件,對於這個控件,目前我知道的會使用兩種方式去綁定數據,如今將這兩種方式分享給你們:css

如今是後臺數據綁定ajax

 1   protected void BindCarID()
 2         {
 3             DataTable dt = new DataTable();
 4           //這裏是數據庫查詢出來的(sql語句和數據庫鏈接,本身寫)
 5           string sql="select * from table1";
 6             if (dt != null && dt.Rows.Count > 0)
 7             {
 8                 dt.AsEnumerable().ToList().ForEach(
 9                     (i) =>
10                     {
11                         if (i["Type"].ToString().Trim() == "1")
12                         {
13                             ddlbank.Items.Add(new ListItem(i["Name"].ToString().Trim(), i["ID"].ToString().Trim()));
14                         }
15                         else
16                         {
17                             ddlbank.Items.Add(new ListItem(i["Name"].ToString().Trim() + "(" + i["CardName"].ToString().Trim() + ")", i["ID"].ToString().Trim()));
18                         }
19                     }
20 
21                 );
22                 /*ddlbank.DataSource = dt;
23                 ddlbank.DataValueField = "ID";
24                 ddlbank.DataTextField = "Name";
25                 ddlbank.DataBind();*/ 這裏是直接數據源綁定
26             }
27             ddlbank.Items.Insert(0, new ListItem("現金", "0"));
28 //新增一個下拉着
29         }
30     
View Code

清空dropdownlist列值的方法:sql

 dropdownlist1.Items.Clear(); //狀況看全部數據數據庫

 dropdownlist1.Items.Remove("bbb");          //清空一行數據json

DropDownList1.SelectedIndex = DropDownList1.Items.IndexOf(DropDownList1.Items.FindByValue("中國"));
就是若是經過FindByValue沒有找到指定項則爲null,而Items.IndexOf(null)會返回-1服務器

設置dropdownlist1選中值app

 1 hidfg.Value="文本";//服務器隱藏控件
 2 
 3 for (int i = 0; i < dropdownlist1.Items.Count; i++)
 4 {
 5 if (hidfg.Value.Equals(dropdownlist1.Items[i].Value))
 6 {
 7 dropdownlist1.Items[i].Selected = true;
 8 
 9 }
10 }
View Code

接下來咱們進行js+ashx進行數據顯示ide

function GetBanks(id, name) {
    $("#Allbank").empty();//清空dropdown
    $.ajax({
        type: "POST",
        url: 'AjaxDf/BkAjax.ashx?OPT=banks',  //處理頁的相對地址
        data: { guestid: id, opts: name }, //參數類型
        success: function (dates) {
            if (dates != "") {
                var t = $.parseJSON(dates);
                var f = t.rows;
                $('#Allbank').append("<option value='-2' Selected='True'>其它</option>");
                if (f.length > 0) {
//綁定dropdown
                    for (var i = 0; i < f.length; i++) {
                        $('#Allbank').append("<option value=" + f[i].BankID + ">" + f[i].BankName + "</option>");
                    }
                }
                $('#yh').css("display", "");
                $('#Allbank').css("display", "");

            }
        }
    });
}

ashx頁面獲取的數據,在返回給頁面url

 1      #region  獲取某我的的銀行信息
 2         public string GetBank(HttpContext context, int it)
 3         {
 4             classDBOP dbop = new classDBOP();
 5             DataTable dt = new DataTable();
 6             string guestid = "";
 7             if (context.Request.Params["guestid"] != null)
 8             {
 9                 guestid = context.Request.Params["guestid"].ToString().Trim();
10             }
11             string bid="";
12              if (context.Request.Params["bid"] != null)
13             {
14                 bid = context.Request.Params["bid"].ToString().Trim();
15             }
16             string tps = "";
17             string strwhere = "";
18             if (it == 1)
19             {
20                 strwhere = "BankID=" + bid + "";
21             }
22             else
23             {
24                 if (context.Request.Params["opts"] != null)
25                 {
26                     tps = context.Request.Params["opts"].ToString().Trim();
27                  
28                 }
29                  strwhere = "TP='" + tps + "' and TPid=" + guestid;
30             }
31             dt = dbop.SchDataDT("table", "ID,Name,[Type]", strwhere, 4);//獲取數據
32             int Counts = 0;
33             string bankNo = "";
34             if (dt != null)
35             {
36                 Counts = dt.Rows.Count;
37                 for (int i = 0; i < dt.Rows.Count; i++)
38                 {
39                     bankNo = dt.Rows[0]["ID"].ToString();
40                 }
41             }
42             if (it == 1)
43             {
44                 return bankNo;
45             }
46             else
47             {
48                 string fh = jsonop.ToJsonString(dt, Counts);
49                 return fh;
50             }
51         }
52         #endregion
View Code

以上是兩種綁定方法,數據庫鏈接和查詢須要朋友們本身寫哦。-spa

相關文章
相關標籤/搜索