我正在尝试将 1 个默认值添加到我的下拉列表框中的 1 个中。
我有 2 个;
- DD位置
- DDL警察
我通过属性将项目添加到 DDLocation 中。因此,每当用户尝试单击其中一项时,DDLpolice 都会自动从数据库中获取值。不幸的是,有一个持久性错误,例如只要只有 1 个值可用,数据就不会显示。仅当您在显示第一个选项之前有 2 个值可供选择时,才会显示数据。我用下面的代码绑定我的 DDLocation。我在下面添加了一个默认值。不幸的是,默认值仅适用于选择 DDLocation
protected void DDLocation_SelectedIndexChanged(object sender, EventArgs e)
{
using (var connAdd = new SqlConnection("Data Source = localhost; Initial Catalog = project; Integrated Security= SSPI"))
{
connAdd.Open();
var sql = "Select policeid from LoginRegisterPolice where location='" + lblocation.SelectedItem.Text + "' AND status='available' AND handle='offcase'";
using (var cmdAdd = new SqlDataAdapter(sql, connAdd))
{
DataSet ds2 = new DataSet();
cmdAdd.Fill(ds2);
DDLpolice.DataSource = ds2;
DDLpolice.DataTextField = "policeid";
DDLpolice.DataValueField = "policeid";
DDLpolice.DataBind();
DDLpolice.Items.Insert(0, new ListItem("Select Officer", "NA"));
}
connAdd.Close();
}
}
我尝试向我的 DDLpolice 添加一个默认值,就像我对以前的 DDL 所做的那样。不幸的是,DDLpolice 已被绑定,因此我无法添加默认值。我尝试使用这两种方法,但都失败了
我为此添加了一个文本。
<asp:DropDownList ID="DDLpolice" runat="server" DataTextField="dropdownpolice" DataValueField="dropdownpolice" Text="Select Officer" OnSelectedIndexChanged ="DDLpolice_SelectedIndexChanged1" style="height: 22px">
</asp:DropDownList>
我也尝试过使用这种方法
protected void DDLpolice_SelectedIndexChanged1(object sender, EventArgs e)
{
DDLpolice.Items.Add("Select Officer");
}
因此,总而言之,我认为由于 DDL 与数据库的绑定,我无法添加。任何帮助,将不胜感激。
问候。
更新! 我终于可以使用 AD.net 提供的这种方法添加默认值
<asp:DropDownList ID="DDLpolice" runat="server" DataTextField="dropdownpolice" DataValueField="dropdownpolice" OnSelectedIndexChanged ="DDLpolice_SelectedIndexChanged1" style="height: 22px"
AppendDataBoundItems="true">
<asp:ListItem Value="">Select Officer</asp:ListItem>
</asp:DropDownList>
基本上,您必须在源代码(html 端)中添加一个 AppendDataBoundItem 方法。之后,添加一个包含默认值的 ListItemValue。