текстовое сообщение на основе выбранного значения выпадающего списка - PullRequest
0 голосов
/ 15 марта 2019

Мой выпадающий список имеет значение, где пользователь выбирает А1, текстовое поле будет показывать +1, выбирать А2, показывать сообщения +2, если B1, показывать сообщения -1, а сообщения В2 показывать -2. Я выбираю А1, +1 выходит и А2, +2 появляются. однако, когда я выбираю B1, появляются +1 и B2, +2. почему ответ As появляется только не Bs? нужна помощь.

мой aspx.cs

protected void ddlJM1_SelectedIndexChanged(object sender, EventArgs e)
{
    int IntentID = Convert.ToInt32(ddlJM1.SelectedValue.ToString());
    FillYes(IntentID);

    if (ddlJM1.SelectedIndex == 1)
    {
        ddlJM2.Enabled = true;
        ddlJM3.Enabled = false;
        ddlJM2.SelectedIndex = 0;
        lblMsgJM.Text = "";
    }

    if (ddlJM1.SelectedIndex == 2)
    {
        ddlJM2.Enabled = true;
        ddlJM2.SelectedIndex = 0;

        ddlJM3.Enabled = false;
        lblMsgJM.Text = "";
    }

}

protected void ddlJM2_SelectedIndexChanged(object sender, EventArgs e)
{
    int YesID = Convert.ToInt32(ddlJM2.SelectedValue.ToString());
    FillJob(YesID);

    if (ddlJM2.SelectedIndex == 1)
    {
        ddlJM3.Enabled = true;
        lblMsgJM.Text = "";
    }

    if (ddlJM2.SelectedIndex == 2)
    {
        ddlJM3.Enabled = false;

    }

    if (ddlJM2.SelectedIndex == 3)
    {
        ddlJM3.Enabled = true;
        lblMsgJM.Text = "";
    }

    if (ddlJM2.SelectedIndex == 4)
    {
        ddlJM3.Enabled = false;
        lblMsgJM.Text = "Please consult / review with ODD focal person";
    }

}


 protected void ddlJM3_SelectedIndexChanged(object sender, EventArgs e)
{
    if (ddlJM3.SelectedIndex == 1)
    {
        lblMsgJM.Text = "+1";
    }
    if (ddlJM3.SelectedIndex == 2)
    {
        lblMsgJM.Text = "+2";
    }

     if (ddlJM3.SelectedIndex == 3)
    {
        lblMsgJM.Text = "-1";
    }
    if (ddlJM3.SelectedIndex == 4)
    {
        lblMsgJM.Text = "-2";
    }
}

 private void FillJob(int YesID) //for ddlJM3
    {
        string strConn = ConfigurationManager.ConnectionStrings["dbconnection"].ConnectionString;
        SqlConnection con = new SqlConnection(strConn);
        SqlCommand cmd = new SqlCommand();
        cmd.Connection = con;
        cmd.CommandType = CommandType.Text;
        cmd.CommandText = "SELECT AlphabetID, Alphabet FROM TableJob WHERE YesID =@YesID";
        cmd.Parameters.AddWithValue("@YesID", YesID);
        DataSet objDs = new DataSet();
        SqlDataAdapter dAdapter = new SqlDataAdapter();
        dAdapter.SelectCommand = cmd;
        con.Open();
        dAdapter.Fill(objDs);
        con.Close();

        if (objDs.Tables[0].Rows.Count > 0)
        {
            ddlJM3.DataSource = objDs.Tables[0];
            ddlJM3.DataTextField = "Alpahabet";
            ddlJM3.DataValueField = "AlphabetID";
            ddlJM3.DataBind();
            ddlJM3.Items.Insert(0, "--Select--");

        }

     }

1 Ответ

0 голосов
/ 15 марта 2019

Пожалуйста, сравните выбранное значение, как это

protected void ddlJM3_SelectedIndexChanged(object sender, EventArgs e)
{
    if (ddlJM3.SelectedItem.Text.ToLower() == "a1")
    {
        lblMsgJM.Text = "+1";
    }
    if (ddlJM3.SelectedItem.Text.ToLower() == "a2")
    {
        lblMsgJM.Text = "+2";
    }

    if (ddlJM3.SelectedItem.Text.ToLower() == "b1")
    {
        lblMsgJM.Text = "-1";
    }
    if (ddlJM3.SelectedItem.Text.ToLower() == "b2")
    {
        lblMsgJM.Text = "-2";
    }
}
...