Как обновить выпадающий список - PullRequest
0 голосов
/ 16 марта 2020

Я пытаюсь получить текст из двух раскрывающихся списков, чтобы сделать запрос, а затем вставить значения этого выполненного запроса в группу раскрывающегося списка. Visual studio не показывает никаких ошибок, но выпадающий список не обновляется. Не против, если выпадающий список на странице aspx не совпадает с codeBehind, их много.

Front-End Part

<div class="column has-text-centered  ">
<div class="box height-20   ">
    <div class="spacing-5">

        <asp:DropDownList ID="hor_lun_c1" CssClass="ddl-width-200 has-text-justified " runat="server">
        </asp:DropDownList>

    </div>

    <div class="spacing-5">

        <asp:DropDownList ID="ddl_lun_c1_nom_mat" CssClass="ddl-width-200 has-text-justified " runat="server">
        </asp:DropDownList>
    </div>

    <div class="spacing-5">

        <asp:DropDownList ID="ddl_lun_c1_nom_prof" CssClass="ddl-width-200 has-text-justified " runat="server">
        </asp:DropDownList>
    </div>
    <div class="spacing-5">
        <asp:DropDownList ID="ddl_lun_c1_nom_salle" CssClass="ddl-width-200 has-text-justified " runat="server"></asp:DropDownList>
    </div>
    <div class="spacing-5">

        <asp:DropDownList ID="ddl_lun_c1_ratt_ou_exam" CssClass="ddl-width-200 has-text-justified " runat="server"></asp:DropDownList>
    </div>

</div>

codeBehind

string nom_na = ddl_na1.SelectedValue;

string fil = ddl_fil.SelectedValue;
MySqlConnection conn = new MySqlConnection(con);
conn.Open();

MySqlCommand charger_li_prof_cmd = conn.CreateCommand();
charger_li_prof_cmd.CommandType = CommandType.Text;
charger_li_prof_cmd.CommandText = "SELECT Professeur.abrv_nom_prof FROM Professeur,Niv_academique,Filiere " +
    "WHERE Niv_academique.nom_na = '" + nom_na + "' AND Filiere.nom_fil = '" + fil + "'  ";

charger_li_prof_cmd.ExecuteNonQuery();

MySqlDataAdapter da_li_prof = new MySqlDataAdapter(charger_li_prof_cmd);
DataTable dt_li_prof = new DataTable();
da_li_prof.Fill(dt_li_prof);
for (int i = 0; i < dt_li_prof.Rows.Count; i++)
{
    string listprof = dt_li_prof.Rows[i].ItemArray[0].ToString();


    ddl_lun_c1_nom_prof.Items.Add(listprof);


    ddl_lun_c2_nom_prof.Items.Add(listprof);


    ddl_lun_c3_nom_prof.Items.Add(listprof);


    ddl_lun_c4_nom_prof.Items.Add(listprof);


    ddl_mar_c1_nom_prof.Items.Add(listprof);


    ddl_mar_c2_nom_prof.Items.Add(listprof);


    ddl_mar_c3_nom_prof.Items.Add(listprof);


    ddl_mar_c4_nom_prof.Items.Add(listprof);


    ddl_mer_c1_nom_prof.Items.Add(listprof);


    ddl_mer_c2_nom_prof.Items.Add(listprof);


    ddl_mer_c3_nom_prof.Items.Add(listprof);


    ddl_mer_c4_nom_prof.Items.Add(listprof);


    ddl_jeu_c1_nom_prof.Items.Add(listprof);


    ddl_jeu_c2_nom_prof.Items.Add(listprof);


    ddl_jeu_c3_nom_prof.Items.Add(listprof);


    ddl_jeu_c4_nom_prof.Items.Add(listprof);


    ddl_ven_c1_nom_prof.Items.Add(listprof);


    ddl_ven_c2_nom_prof.Items.Add(listprof);


    ddl_ven_c3_nom_prof.Items.Add(listprof);


    ddl_ven_c4_nom_prof.Items.Add(listprof);


    ddl_sam_c1_nom_prof.Items.Add(listprof);


    ddl_sam_c2_nom_prof.Items.Add(listprof);


    ddl_sam_c3_nom_prof.Items.Add(listprof);


    ddl_sam_c4_nom_prof.Items.Add(listprof);
}

1 Ответ

1 голос
/ 16 марта 2020

Вы можете привязать DataTable напрямую к DropDownList, не добавляя каждый элемент отдельно.

ddl_lun_c1_nom_prof.DataSource = dt_li_prof;
ddl_lun_c1_nom_prof.DataValueField = "itemID";
ddl_lun_c1_nom_prof.DataTextField = "field01";
ddl_lun_c1_nom_prof.DataBind();

Кроме того, используйте параметры в своем запросе: Почему мы всегда предпочитаем использовать параметры в SQL заявления?

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...