0

3 つのドロップダウン リスト (DDL) があり、すべてが policeID という名前のこの列にバインドされています。

policeID 列には、次の 3 つのデータ値があります。

  1. 123456
  2. 234567
  3. 345678

データが 1 つの ddl で既に選択されている場合、データが別の ddl に表示されないようにしようとしています。

たとえば、私は 3 つの DDL を持っています。

  1. DDL1
  2. DDL2
  3. DDL3

DDL1 が 123456 を選択した場合、この値 123456 は他の 2 つの DDL には表示されません。

ただし、ユーザーが 123456 の選択を解除してデフォルト値を選択すると、この値 123456 は 3 つの DDL すべてで表示されます。

このスレで似たような質問した

更新パネルを使用しました

<asp:UpdatePanel ID="UpdatePanel1" runat="server">
<ContentTemplate>
</ContentTemplate>
</asp:UpdatePanel>

しかし、うまくいきません。繰り返しデータが表示されないようにする他の方法はありますか?

よろしく。

これは、DDL を SQL にバインドする方法です。

protected void ddllocation_SelectedIndexChanged(object sender, EventArgs e)
    {

        using (var connAdd = new SqlConnection("Data Source = localhost; Initial Catalog = MajorProject; Integrated Security= SSPI"))
        {
            connAdd.Open();

            var sql = "Select policeid from PoliceAccount where status ='available' and handle ='offcase' and postedto='" + ddllocation.SelectedValue + "'";
            using (var cmdAdd = new SqlDataAdapter(sql, connAdd))
            {
                DataSet ds2 = new DataSet();
                cmdAdd.Fill(ds2);

                ddlpid1.Items.Clear();
                ddlpid1.DataSource = ds2;
                ddlpid1.DataTextField = "policeid";
                ddlpid1.DataValueField = "policeid";
                ddlpid1.DataBind();
                ddlpid1.Items.Insert(0, new ListItem("Police ID", ""));
                ddlpid1.SelectedIndex = 0;

                ddlpid2.Items.Clear();
                ddlpid2.DataSource = ds2;
                ddlpid2.DataTextField = "policeid";
                ddlpid2.DataValueField = "policeid";
                ddlpid2.DataBind();
                ddlpid2.Items.Insert(0, new ListItem("Police ID", ""));
                ddlpid2.SelectedIndex = 0;

                ddlpid3.Items.Clear();
                ddlpid3.DataSource = ds2;
                ddlpid3.DataTextField = "policeid";
                ddlpid3.DataValueField = "policeid";
                ddlpid3.DataBind();
                ddlpid3.Items.Insert(0, new ListItem("Police ID", ""));
                ddlpid3.SelectedIndex = 0;

                ddlpid4.Items.Clear();
                ddlpid4.DataSource = ds2;
                ddlpid4.DataTextField = "policeid";
                ddlpid4.DataValueField = "policeid";
                ddlpid4.DataBind();
                ddlpid4.Items.Insert(0, new ListItem("Police ID", ""));
                ddlpid4.SelectedIndex = 0;

                ddlpid5.Items.Clear();
                ddlpid5.DataSource = ds2;
                ddlpid5.DataTextField = "policeid";
                ddlpid5.DataValueField = "policeid";
                ddlpid5.DataBind();
                ddlpid5.Items.Insert(0, new ListItem("Police ID", ""));
                ddlpid5.SelectedIndex = 0;


            }
4

2 に答える 2