asp.net更新面板创建新下拉框
我的asp.net面板有问题,我想在更改其他dropdownbox的索引时修改dropdownbox数据源selectcommand,但每次我更改新的dropdownbox创建 这是我的代码:asp.net更新面板创建新下拉框,asp.net,combobox,updatepanel,dropdownbox,Asp.net,Combobox,Updatepanel,Dropdownbox,我的asp.net面板有问题,我想在更改其他dropdownbox的索引时修改dropdownbox数据源selectcommand,但每次我更改新的dropdownbox创建 这是我的代码: <asp:UpdatePanel ID="UpdatePanel1" runat="server" > <ContentTemplate> <asp:DropDownList ID="comboCountry" runa
<asp:UpdatePanel ID="UpdatePanel1" runat="server" >
<ContentTemplate>
<asp:DropDownList ID="comboCountry" runat="server" AutoPostBack="True"
DataSourceID="SqlDataSource3" OnSelectedIndexChanged="comboCountry_OnSelectedIndexChanged"
DataTextField="country_name" DataValueField="country_id">
</asp:DropDownList>
<asp:SqlDataSource ID="SqlDataSource3" runat="server"
ConnectionString="<%$ ConnectionStrings:JobsConnectionString %>"
SelectCommand="SELECT * FROM [country]"></asp:SqlDataSource>
</td>
</tr>
<tr class="trwidth">
<td>
<asp:DropDownList ID="comboCity" runat="server" DataSourceID="SqlDataSource2"
DataTextField="city_name" DataValueField="location_id">
</asp:DropDownList>
<asp:SqlDataSource ID="SqlDataSource2" runat="server"
ConnectionString="<%$ ConnectionStrings:JobsConnectionString %>"
SelectCommand="SELECT * FROM [location]"></asp:SqlDataSource>
</ContentTemplate>
</asp:UpdatePanel>
在第一个dromp down中选择country_代码的值,然后将第二个dromp down参数绑定到第一个dromp down。然后将第一个下拉菜单上的auto post设置回true,第二个下拉菜单将使用结果进行渲染 你能解释一下问题是什么吗?您得到了什么结果?您想要什么结果?当我更改combobox(comboCountry)的索引时,它应该调用方法comboCountry_OnSelectedIndexChanged and change datasource selectcommand for SqlDataSource2,然后应该更新combobox(comboCity)项,而不是更新combobox(comboCity)项目我得到了包含新项目的新组合框。你说的“新项目”是什么意思?我的意思是
protected void comboCountry_OnSelectedIndexChanged(object sender, EventArgs e)
{
try
{
SqlDataSource2.SelectCommand = "SELECT * FROM [location] where [country_id]=" + comboCountry.SelectedValue;
// SqlDataSource2.DataBind();
comboCity.DataBind();
}
catch (Exception exception)
{
Debug.WriteLine(exception.Message);
}
}