C# 下拉所选文本

本文关键字:文本 | 更新日期: 2023-09-27 18:33:38

我正在尝试获取所选下拉项的文本

我的下拉列表充满了数据库数据

ad.Fill(dt);
drop1.DataSource = dt;
drop1.DataTextField = "zodys";
drop1.DataValueField = "zodys";
drop1.DataBind();

例如:word1, word2, word3, ... 所有这些都工作正常,但是当我尝试获取所选项目的文本时,我总是得到相同的文本(1 个项目的文本)

txtZip.Text = drop1.SelectedItem.Text; 

C# 下拉所选文本

我几乎可以保证你的问题是你在Page_Load()内定义了上述内容? 只有在不回发时才需要执行此操作,如下所示:

if(!IsPostBack)
{
   ad.Fill(dt);
   drop1.DataSource = dt;
   drop1.DataTextField = "zodys";
   drop1.DataValueField = "zodys";
   drop1.DataBind();
}

这可确保在每次检查选定项之前都不会重置该值。

我假设您也在page_load的回发上对下拉列表进行数据绑定。您应该检查IsPostBack

if(!IsPostBack)
{
    ad.Fill(dt);
    drop1.DataSource = dt;
    drop1.DataTextField = "zodys";
    drop1.DataValueField = "zodys";
    drop1.DataBind();
}