Comment utiliser la DropDownList de l'événement SelectedIndexChanged
J'ai deux DropDownList
s dans mon formulaire et lorsque je sélectionne une valeur dans la première liste déroulante, je voudrais une valeur liée à être automatiquement sélectionné dans la deuxième liste déroulante.
C'est ce que j'ai actuellement:
<table>
<tr>
<td>
<asp:Label ID="lbmanu" runat="server" Text="Furniture Manufacturer :
"></asp:Label>
</td>
<td>
<asp:DropDownList ID="ddmanu" runat="server"
DataSourceID="Sql_fur_model_manu"
DataTextField="manufacturer" DataValueField="manufacturer"
onselectedindexchanged="ddmanu_SelectedIndexChanged">
</asp:DropDownList>
<asp:SqlDataSource ID="Sql_fur_model_manu" runat="server"
ConnectionString="<%$ ConnectionStrings:conStr %>"
SelectCommand="SELECT DISTINCT [manufacturer] FROM
[furniture_manufacturer]">
</asp:SqlDataSource>
</td>
</tr>
<tr>
<td>
<asp:Label ID="lbtype" runat="server" Text="Furniture Type :
"></asp:Label>
</td>
<td>
<asp:DropDownList ID="ddtype" runat="server" AutoPostBack="True">
</asp:DropDownList>
</td>
</tr>
</table>
Code Derrière :
protected void ddmanu_SelectedIndexChanged(object sender, EventArgs e)
{
string query = "select furniture from furniture_model where manufacturer='" +
ddmanu.SelectedValue.ToString() + "'";
con.Open();
cmd = new SqlCommand(query, con);
DataTable dt = Select(query);
cmd.ExecuteNonQuery();
ddtype.DataSource = dt;
ddtype.DataTextField = "manufacturer";
ddtype.DataValueField = "furniture";
ddtype.DataBind();
}
- Ce qui se passe avec le code que vous avez actuellement?
Vous devez vous connecter pour publier un commentaire.
Vous devez ajouter AutoPostBack="true" pour DropDownList1
La façon la plus simple que vous pouvez le faire dans SelectedIndexChanged événements de DropDownLists. Vérifier ce code..
Je pense que c'est le coupable:
Je ne sais pas ce que le code est censé faire, mais il semble que vous voulez créer un
SqlDataReader
pour que, comme expliqué ici et sur le web, si vous recherchez "SqlCommand DropDownList DataSource":Ou vous pouvez créer un
DataTable
comme expliqué ici:CS1061:
ASP.webform1_aspx
ne contient pas une définition pourSAMPLE_OnSelectedIndexChanged
et aucune méthode d'extensionSAMPLE_OnSelectedIndexChanged
acceptant un premier argument de typeASP.webform1_aspx
pu être trouvée (vous manque une directive using ou une référence d'assembly?)