簡體   English   中英

使用asp.net C#獲取下拉列表的選定索引

[英]Getting selected Index of dropdown using asp.net C#

我有一個這樣的下拉列表:

   <asp:DropDownList ID="CompaniesDropDownList" runat="server" DataSourceID="CompaniesObjectDataSource"
                     DataTextField="NameLang1" DataValueField="CompanyID" AppendDataBoundItems="True"
                     AutoPostBack="true">
        <asp:ListItem Value="0" Text="select a company"></asp:ListItem>
   </asp:DropDownList>
   &nbsp;
   <asp:ObjectDataSource ID="CompaniesObjectDataSource" runat="server" TypeName="HRCompany"
       SelectMethod="GetList"></asp:ObjectDataSource>
   <asp:CustomValidator ID="CompanyCustomValidator" runat="server" ErrorMessage="select a company"></asp:CustomValidator>

我正在這樣設置其選定的值:

CompaniesDropDownList.SelectedItem.Value = "3";

它正在工作。

設置此值后,我將檢查條件,所選索引或值是否像這樣:

if (CompaniesDropDownList.SelectedValue == "0")

要么

if (CompaniesDropDownList.SelectedIndex == 0)

這永遠是真的。 盡管在前端的下拉列表中,選擇的值為3。

如何獲得此下拉列表的選定索引?

請建議

那就是我想要的。 我想從數據庫獲取值,並在頁面加載時設置選定的索引。

protected void Page_Load(object sender, EventArgs e)
{
    try {
        if (!IsPostBack) {
            LoadValues();  // this function is used to load the value in DDL
        }
    } catch (Exception ex) {

    }
}

加載值功能

private void LoadValues()
{
    try {
        DataSet SampleDs = YourDS; // Your dataset values from DB 

        if (!string.IsNullOrEmpty(SampleDs.Tables(0).Rows(0)("yourvalue").ToString)) {
            CompaniesDropDownList.SelectedValue = SampleDs.Tables(0).Rows(0)("yourvalue").ToString;  // assuming the data in the table is value of DDL
        }
    } catch (Exception ex) {

    }
}

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM