最近在使用dropdownlist控件,对于这个控件,目前我知道的会使用两种方式去绑定数据,现在将这两种方式分享给大家:

现在是后台数据绑定

   protected void BindCarID()
{
DataTable dt = new DataTable();
//这里是数据库查询出来的(sql语句和数据库连接,自己写)
string sql="select * from table1";
if (dt != null && dt.Rows.Count > )
{
dt.AsEnumerable().ToList().ForEach(
(i) =>
{
if (i["Type"].ToString().Trim() == "")
{
ddlbank.Items.Add(new ListItem(i["Name"].ToString().Trim(), i["ID"].ToString().Trim()));
}
else
{
ddlbank.Items.Add(new ListItem(i["Name"].ToString().Trim() + "(" + i["CardName"].ToString().Trim() + ")", i["ID"].ToString().Trim()));
}
} );
/*ddlbank.DataSource = dt;
ddlbank.DataValueField = "ID";
ddlbank.DataTextField = "Name";
ddlbank.DataBind();*/ 这里是直接数据源绑定
}
ddlbank.Items.Insert(, new ListItem("现金", ""));
//新增一个下拉着
}

清空dropdownlist列值的方法:

dropdownlist1.Items.Clear(); //情况看所有数据

dropdownlist1.Items.Remove("bbb");          //清空一行数据

DropDownList1.SelectedIndex = DropDownList1.Items.IndexOf(DropDownList1.Items.FindByValue("中国"));
就是如果通过FindByValue没有找到指定项则为null,而Items.IndexOf(null)会返回-1

设置dropdownlist1选中值

 hidfg.Value="文本";//服务器隐藏控件

 for (int i = ; i < dropdownlist1.Items.Count; i++)
{
if (hidfg.Value.Equals(dropdownlist1.Items[i].Value))
{
dropdownlist1.Items[i].Selected = true; }
}

接下来我们进行js+ashx进行数据显示

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 > ) {
//绑定dropdown
for (var i = ; i < f.length; i++) {
$('#Allbank').append("<option value=" + f[i].BankID + ">" + f[i].BankName + "</option>");
}
}
$('#yh').css("display", "");
$('#Allbank').css("display", ""); }
}
});
}

ashx页面获取的数据,在返回给页面

      #region  获取某个人的银行信息
public string GetBank(HttpContext context, int it)
{
classDBOP dbop = new classDBOP();
DataTable dt = new DataTable();
string guestid = "";
if (context.Request.Params["guestid"] != null)
{
guestid = context.Request.Params["guestid"].ToString().Trim();
}
string bid="";
if (context.Request.Params["bid"] != null)
{
bid = context.Request.Params["bid"].ToString().Trim();
}
string tps = "";
string strwhere = "";
if (it == )
{
strwhere = "BankID=" + bid + "";
}
else
{
if (context.Request.Params["opts"] != null)
{
tps = context.Request.Params["opts"].ToString().Trim(); }
strwhere = "TP='" + tps + "' and TPid=" + guestid;
}
dt = dbop.SchDataDT("table", "ID,Name,[Type]", strwhere, );//获取数据
int Counts = ;
string bankNo = "";
if (dt != null)
{
Counts = dt.Rows.Count;
for (int i = ; i < dt.Rows.Count; i++)
{
bankNo = dt.Rows[]["ID"].ToString();
}
}
if (it == )
{
return bankNo;
}
else
{
string fh = jsonop.ToJsonString(dt, Counts);
return fh;
}
}
#endregion

以上是两种绑定方法,数据库连接和查询需要朋友们自己写哦。-

dropdownlist绑定和选中的更多相关文章

  1. 下拉列表框DropDownList绑定Dictionary泛型类

    DropDownList绑定Dictionary泛型类 定义一个Dictionary泛型类 /// <summary>    /// 产品类型    /// </summary> ...

  2. DropDownList绑定及修改

    DropDownList绑定及修改 http://www.cnblogs.com/hulang/archive/2010/12/29/1920662.html   ? 1 2 3 4 5 6 7 8 ...

  3. 使用layui的form.on绑定select选中事件, form.on()不执行的原因分析

    使用layui的form.on绑定select选中事件中, form.on()不执行, 主要原因有 1, select标签中没有写lay_filter属性,用来监听 <select id=&qu ...

  4. [Asp.net]DropDownList改变默认选中项的两种方式

    引言 其实是不想总结这方面的内容,发现太简单了,可是在这上面也栽了跟头.所以还是记录一下吧,算是提醒自己,不要太看不起太基础的东西,有这种心理,是会载大跟头的. 一个例子 这里模拟一下最常用的一个例子 ...

  5. DropdownList绑定的两种方法

    动态绑定方法一:动态绑定数据库中的字段. SqlConnection conn = UtilitySqlClass.OperateDataBase.ReturnConn();string strSQL ...

  6. DropDownList绑定多个字段值

    发觉这个问题还是挺多人问的,简单写几个例子: 假设现有1张表名为:XUDAXIA  , 该表里有2个字段:  NAME , GENDER 达到效果: 将这2个字段绑定到DropDownList的Lis ...

  7. C# DropDownList绑定文件夹

    首先创建一个类,类名称为FileControl, /// <summary> /// 获取制定文件夹下面的文件夹 /// </summary> /// <param na ...

  8. C# DropDownList绑定添加新数据的几种方法

    第一种:在前台手动绑定(适用于固定不变的数据项) <asp:DropDownList ID="DropDownList1" runat="server"& ...

  9. C# DropDownList绑定添加新数据的三种方法

    一.在前台手动绑定 <asp:DropDownList ID="DropDownList1" runat="server">    <asp: ...

随机推荐

  1. Broadcom网卡linux系统下无法连接到网络问题(某种情况- -||)的解决办法

    国际惯例,先闲扯: 其实我是个电脑白痴,至于为什么一个电脑白痴会来做开发呢?原因非常匪夷所思且简单--“因为做开发看起来很酷!”,那为什么要一把年纪了才来做开发呢?原因更简单,“当我回过神,就发现我已 ...

  2. 移动端Web开发笔记

    最近写的一个移动端项目:上海 地铁指路通,之间遇到的一些问题,记录下来(以后会不断补充的): 1. 丰富的页面Meta: 1.1: 控制显示区域各种属性: <meta content=" ...

  3. hadoop中datanode无法启动

    一.问题描述 当我多次格式化文件系统时,如 [hadoop@xsh hadoop]$ ./bin/hdfs namenode -format 会出现datanode无法启动,查看日志(/usr/loc ...

  4. 消息提醒,初探Notification

    1:MainActivity.java package com.example.notificationtest; import android.app.Activity; import androi ...

  5. android 登录界面

    http://blog.csdn.net/jiabinjlu/article/details/6920967 http://blog.csdn.net/myserverthepeople/articl ...

  6. Send竞争对手:百度云一小时,QQ超大附件最多支持2G,邮件附件20M到50M不等(附国外所有storage列表)——痛点是,最大传输2G,最大容量只有3G(和微云不是一回事),转存到微云文件不能超过1G

    QQ邮箱最大可发送50M普通附件(群邮件则限制在2M).此外也可以使用超大附件功能,支持将1G的文件发往任意邮箱.QQ邮箱根据你的QQ邮箱容量的不同制定相应的接受附件限制,包括附件在内,2G用户所发送 ...

  7. 【转】Android 4.0.3 CTS 测试

    原文网址:http://blog.csdn.net/zxm317122667/article/details/8508013 Android-CTS 4.0.3测试基本配置 1. Download C ...

  8. CString 的一些事

    MFC Visual Studio 2008 CString 的 Format 中不能这样存在str.Format(_T("Cool(\%)"));  或者 str.Format( ...

  9. POJ1664(简单动态规划)

    #include<iostream> #include<string> #include<cstring> using namespace std; ][]; vo ...

  10. ps&&/proc/pid/xxx

    ps 如果想看一个进程的启动时间,可以用lstart来看 [root@jiangyi02.sqa.zmf /home/ahao.mah] #ps -eo pid,lstart,etime,cmd |g ...