如何使用DropDownList进行数据绑定并获取值

问题:从DB中获取一个新闻种类的datatable,并将其绑定在 DropDownList中,最后可以根据DropDownList

来添加不同新闻种类的新闻

DB:

界面;

后置代码:

protected void Page_Load(object sender, EventArgs e)
{
//判断session里面是否存在管理员
if (Session["admin"] != null)
{
if (!Page.IsPostBack)
{
//绑定新闻分类
DataTable dt = new CategoryManager().GetAllCategory();
ddlCategory.DataSource
=dt;
//绑定key值
ddlCategory.DataTextField="name";
//绑定value值
ddlCategory.DataValueField="id";
ddlCategory.DataBind();
}
}
else
{
//未登录
Response.Redirect("login.aspx");
}
}

进行添加新闻的代码:

//添加新闻按钮
protected void btnAdd_Click(object sender, EventArgs e)
{
News n
= new News();
//获取DropDownList的value值
n.CaID = ddlCategory.SelectedValue.ToString();
//获取DropDownList的key值
n.CaID = ddlCategory.SelectedItem.ToString();
//这种方法也可以获取DropDownList的value值
n.CaID = ddlCategory.Text;
n.Title
= txtTitle.Text.Trim();
n.Content
= FreeTextBox1.Text;

bool b= new NewsManager().AddNews(n);
if (b)
{
Page.ClientScript.RegisterStartupScript(Page.GetType(),
"message", "<script language='javascript' defer>alert('新闻添加成功!');</script>");
}
else
{
Page.ClientScript.RegisterStartupScript(Page.GetType(),
"message", "<script language='javascript' defer>alert('新闻添加失败!');</script>");
}

//清空标题和内容
Clear();
}

//清空标题和内容
private void Clear()
{
txtTitle.Text
= "";
FreeTextBox1.Text
= "";
}

在HTML页面中生成的DropDownList的代码

<p>新闻分类:<select name="ctl00$ctl00$ContentPlaceHolder1$M_ContentPlaceHolder$ddlCategory" id="ctl00_ctl00_ContentPlaceHolder1_M_ContentPlaceHolder_ddlCategory">
<option value="27">IT新闻</option>
<option value="28">时事新闻</option>
<option value="29">科技新闻</option>
<option value="30">体育新闻</option>

</select>

</p>
举例:IT新闻为key值,27则为value值
posted @ 2011-02-24 17:27  李只蚊  阅读(3092)  评论(4编辑  收藏  举报