我有一个下拉列表。用户在选择不同的值后,我应该从下拉列表中选择用户选择的选项文本,然后从数据库中查找数据并在网页上显示相关内容。如果用户再次更改选项,我应该根据所选的选项文本检索不同的数据,并在网页上显示不同的内容。
我怎么能做到这一点?有人有任何想法让我开始吗?我在网上研究过,但找不到任何有用的东西。
这是我的代码:
ASPX文件:
<asp:Dropdownlist ID="SelectionDropDownList"
runat="server" Width="136px"
EnableViewState="True"
AppendDataBoundItems="true">
</asp:Dropdownlist>
CS档案:
//how the dropdown list is being populated out. Dropdown list is being populated out from what the user has selected from a listbox.
public void BindSomething()
{
DateTime choosenDate = DateTime.MinValue;
using (SqlConnection conn = new SqlConnection(dbConn))
{
using (SqlCommand cmd = new SqlCommand(spretrieve, conn))
{
//Lost to hold the values
List<DateTime> listCopy = new List<DateTime>();
DateTime dt;
string values = String.Join(", ", ListBox1.Items.Cast<ListItem>().Where(i => i.Selected).Select(i => i.Text));
if (values.Contains("Select All"))
{
//Loop through each items in listbox and then add it to list
foreach (ListItem li in ListBox1.Items)
{
if (DateTime.TryParse(li.Text, out dt))
{
listCopy.Add(dt);
}
}
}
else
{
//Loop through each items in listbox and then add it to list
foreach (ListItem li in ListBox1.Items)
{
//check if item is selected
if (li.Selected == true)
{
//add items to list
listCopy.Add(DateTime.Parse(li.Text));
}
}
}
//compare and sort so that the latest date comes on top
listCopy.Sort((x, y) => y.CompareTo(x));
//clear the items in dropdownlist
SelectionDropDownList.Items.Clear();
//set the datasource to dropdownlist
SelectionDropDownList.DataSource = listCopy;
//set the dateformatstring in dropdownlist
SelectionDropDownList.DataTextFormatString = "{0:dd-MMM-yyyy}";
//Bind the dropdownlist
SelectionDropDownList.DataBind();
}
感谢有人可以帮助我,非常感谢!!
答案 0 :(得分:0)
您可以尝试使用jQuery
$(document).ready(function() {
$('#SelectionDropDownList').change(function(){
//here you can add code for whatever you want to show
});
});
我希望这会对你有所帮助。