Dropdownlist怎么获取绑定的数据项的ID啊?
我的dropdownlist绑定的数据源是查询的数据库中的 string selpc = "select province_city from JOB_provinceandcity where fid=0";
SqlDataAdapter sda1 = new SqlDataAdapter(selpc, conn);
conn.Open();
DataSet ds1 = new DataSet();
sda1.Fill(ds1);
this.ddlprovince.DataSource = ds1;
this.ddlprovince.DataTextField = "province_city";
this.ddlprovince.DataBind();怎么获取他选定项的ID啊?
我的dropdownlist绑定的数据源是查询的数据库中的 string selpc = "select province_city from JOB_provinceandcity where fid=0";
SqlDataAdapter sda1 = new SqlDataAdapter(selpc, conn);
conn.Open();
DataSet ds1 = new DataSet();
sda1.Fill(ds1);
this.ddlprovince.DataSource = ds1;
this.ddlprovince.DataTextField = "province_city";
this.ddlprovince.DataBind();怎么获取他选定项的ID啊?
解决方案 »
- BeginTransaction()事物能否在For循环结束后再执行Commit()?
- 页面如何不可操作
- js如何屏蔽IE自带的F1-F12的功能
- aspx.cs如何传值到类文件(.cs)
- datagrid的超级链接问题
- asp.net 和sql2005数据库连接问题.
- 送Gmail,留下email
- asp.net程序,在文件上传时点其他的链接就会没反应,有没有办法解决
- 哭了,撇200分,前阵子面试的一个公司,有了职位空缺,叫我去......
- 我的SQL数据库为什么老是链接不上:)各位帮我看看下面的程序!
- fileupload上传图片预览问题?
- var product = db.Products.Single(p => p.Id == productId);这句什么意思
SqlDataAdapter sda1 = new SqlDataAdapter(selpc, conn);
conn.Open();
DataSet ds1 = new DataSet();
sda1.Fill(ds1);
this.ddlprovince.DataSource = ds1;
this.ddlprovince.DataTextField = "ID";
this.ddlprovince.DataBind();
//地区绑定
private void Bind()
{
SqlDataReader dr = ba.GetDUList("Areashi='石家庄'");
while (dr.Read())
{
ListItem li = new ListItem();
li.Value = dr["AreaID"].ToString();
li.Text = dr["AreaName"].ToString();
quyu.Items.Add(li);
}
dr.Close();
}
this.ddlprovince.DataTextValue 这个是绑定数据库中的ID
如果你要提取的话 那就是 this.ddlprovince.SelectItem.Value或者是this.ddlprovince.selectedValue
this.ddlprovince.DataValueField 这个是绑定数据库中的ID
如果你要提取的话 那就是 this.ddlprovince.SelectItem.Value或者是this.ddlprovince.selectedValue
插入数据库的是 选择的省份ID 而不是选择的字段 比如广东等等
源代码: public void bindpro()
{
//初始化省
using (SqlConnection conn = new SqlConnection(str))
{
try
{
string selpc = "select province_city from JOB_provinceandcity where fid=0";
SqlDataAdapter sda1 = new SqlDataAdapter(selpc, conn);
conn.Open();
DataSet ds1 = new DataSet();
sda1.Fill(ds1);
this.ddlprovince.DataSource = ds1;
this.ddlprovince.DataTextField = "province_city";
this.ddlprovince.DataBind();
}
catch
{
}
}
}
public void insert()
{
using (SqlConnection conn = new SqlConnection(str))
{
conn.Open();
int pro = this.ddlprovince.;---就是这个地方我要 pro是选定省在数据库中的ID 怎么做啊....
string inner = "insert into websen_agent(Province) values('pro')";
SqlCommand cmd = new SqlCommand(inner, conn);
cmd.ExecuteNonQuery();
Response.Write("alert('提交成功!')");
}
}
前提是你设置了那个下拉框的DataTextField 为数据库中省份的ID
this.ddlprovince.DataValueField = "ID的列名"; 提交回服务器的时候这样取到id :
int id=int.Parse(this.ddlprovince.SelectValue)
DataTextField 是显示出来给用户看的
DataValueField 是后台编码时写入数据库的
所以你要想把ID写入数据库就必须显示的时候绑定好DataValueField
在绑定市的时候出错了 public void bindcity()
{ //根据省份ID初始化市
using (SqlConnection conn = new SqlConnection(str))
{
conn.Open();
//根据默认省取出ID
string IDp = "select ID from JOB_provinceandcity where province_city='" + ddlprovince.SelectedValue.Trim() + "'";
SqlCommand cmd = new SqlCommand(IDp, conn);
string fid = cmd.ExecuteScalar().ToString(); //DropdownList绑定市
string city = "select province_city from JOB_provinceandcity where fid=" + fid;
SqlDataAdapter sda2 = new SqlDataAdapter(city, conn);
DataSet ds2 = new DataSet();
sda2.Fill(ds2);
try
{
if (ds2.Tables[0].Rows.Count > 0)
{
this.city.Visible = true;
ddlcity.DataSource = ds2;
ddlcity.DataTextField = "province_city";
ddlcity.DataBind();
}
else
{
this.ddlcity.Items.Clear();
this.ddlcountry.Items.Clear();
this.city.Visible = false;
this.country.Visible = false;
}
}
catch
{
}
}
}
有设置text和value属性的 ,你把value设成IDtext设成城市名 然后你点击的时候,选value
public void bindcity()
{ //当前选中的省份ID
int fid =Convert.ToInt32(ddlprovince.SelectedValue); //根据省份ID初始化市
using (SqlConnection conn = new SqlConnection(str))
{ //DropdownList绑定市
string city = "select id,rovince_city from JOB_provinceandcity where fid=" + fid;
SqlDataAdapter sda2 = new SqlDataAdapter(city, conn);
DataSet ds2 = new DataSet();
sda2.Fill(ds2);
try
{
if (ds2.Tables[0].Rows.Count > 0)
{
this.city.Visible = true;
ddlcity.DataSource = ds2;
ddlcity.DataTextField = "province_city";
ddlcity.DataValueField = "id";
ddlcity.DataBind();
}
else
{
this.ddlcity.Items.Clear();
this.ddlcountry.Items.Clear();
this.city.Visible = false;
this.country.Visible = false;
}
}
catch
{
}
}
}
Dropdownlist怎么获取绑定的数据项的ID啊?
我的dropdownlist绑定的数据源是查询的数据库中的
C# codestring selpc="select ID,province_city from JOB_provinceandcity where fid=0";
SqlDataAdapter sda1=new SqlDataAdapter(selpc, conn);
conn.Open();
DataSet ds1=new DataSet();
sda1.Fill(ds1);this.ddlprovince.DataSource= ds1;this.ddlprovince.DataTextField="province_city";
ds1;this.ddlprovince.DataValueField="ID";
this.ddlprovince.DataBind();
int pro = int.Parse(this.ddlprovince.SelectedValue);
为什么出错了啊?
在将 varchar 值 'pro' 转换成数据类型 int 时失败。
ddlprovince.DataValueField = "Id";这个绑定的是ID的值
也就是你获取的selectedvalue的值
现在的问题是
string mm= ddlprovince.selectedvalue;插入数据库是整形的
int pro = int.Parse(this.ddlprovince.SelectedValue);
为什么出错了啊?
在将 varchar 值 'pro' 转换成数据类型 int 时失败。
怎么办?
this.ddlprovince.SelectedValue是什么值?response.write(this.ddlprovince.SelectedValue.ToString());
if (myDs.Tables[0].Rows.Count == 0)
{
controlName.Items.Add(new ListItem("尚无相关数据", ""));
}
else
{
//controlName.Items.Add(new ListItem("请选择...", "0"));
for (int i = 0; i < myDs.Tables[0].Rows.Count; i++)
{
controlName.Items.Add(new ListItem(myDs.Tables[0].Rows[i][fieldName].ToString(), myDs.Tables[0].Rows[i][fieldId].ToString()));
}
}
myDs.Clear();