| ID | Asunto | Fecha | Nick | |
| 40459 | llenar dropdownlist segun la seleccion de otro | 16/04/08 14:07 | lmiguelonl | |  |
Saludos foreros, estoy intentando llenar un droplist segun la eleccion que se hagan en otro droplist. El primero se llena desde la BBDD usando un SQLDataSource que lleva su consulta SELECT tal cual. El segundo en cambio debe llenarse variando la clausula where de la consulta segun la selccion que se haga en el anterior. El aspx queda mas o menos asi: <asp: DropDownList ID="DropDownList1" runat="server" DataSourceID="SqlDataSource1" DataTextField="franquicia" DataValueField="franquicia" AutoPostBack="True" AppendDataBoundItems="True" >
<asp: ListItem>
Listado Franquicias
</asp: ListItem></asp: DropDownList>
<asp: DropDownList ID="DropDownList2" runat="server" Visible="False"
AutoPostBack="True" DataSourceID="SqlDataSource2" DataTextField="descripcion" DataValueField="descripcion">
</asp: DropDownList>
<asp: SqlDataSource ID="SqlDataSource1" runat="server" ConnectionString="<%$ ConnectionStrings:AtilaUSRConn %>"
SelectCommand="SELECT franquicia
FROM
TablaFranquiciasBBtextil">
</asp: SqlDataSource>
<asp: SqlDataSource ID="SqlDataSource2" runat="server" ConnectionString="<%$ ConnectionStrings:AtilaUSRConn %>"
SelectCommand="Select descripcion from AlmacenesEmpresas where
Franquicia = ????? order by descripcion;">
<SelectParameters>
<asp: SessionParameter
Name="Franquicia"
SessionField="Franquicia" />
</SelectParameters>
</asp: SqlDataSource>La parte del SelectParameters la vi en la ayuda pero no estoy muy seguro de como va. Algo habra que poner donde estan las ???? Gracias de antemano [Editado: lmiguelonl, 16/04/2008 14:09:08] [lmiguelonl, 16/04/2008 14:10:10] [lmiguelonl, 16/04/2008 14:10:57] |
|
| ID | Asunto | Fecha | Nick | |
| 40462 | Re: llenar dropdownlist segun la seleccion de otro (Resp: 40459) | 16/04/08 14:54 | Naiet | |  |
Debes usar un parámetro basado en control. La verdad es que el asistente te lo hace todo sólo, no se porque te has atascado... <asp:SqlDataSource ID="SqlDataSource2" runat="server" ConnectionString="<%$ ConnectionStrings:AtilaUSRConn %>"
SelectCommand="Select descripcion from AlmacenesEmpresas
where Franquicia = @Franquicia order by descripcion">
<SelectParameters>
<asp:ControlParameter ControlID="DropDownList1"
Name="Franquicia" PropertyName="SelectedValue"
Type="String" />
</SelectParameters>
</asp:SqlDataSource>
Si esta respuesta resuelve tu duda, por favor pulsa en la de este mensaje. Gracias. |
|
| ID | Asunto | Fecha | Nick | |
| 40483 | Re: llenar dropdownlist segun la seleccion de otro (Resp: 40462) | 17/04/08 09:31 | lmiguelonl | |  |
"Atascado" es mi segundo nombre. En algun punto algo se me fue y la cosa no iba. Tu codigo va bien. En todo caso en lo que esperaba respuesta del foro me las arregle para hacerlo, asignando a mano el valor asi: En el aspx: <SelectParameters>
<asp: Name="Franquicia"/>
</SelectParameters>y en el aspx.vb SqlDataSource2.SelectParameters("Franquicia").DefaultValue =
DropDownList1.SelectedItem.ValueEntiendo que con tu opcion el parametro siempre lo cargara del droplist1 y de la otra manera puedo asiganrle el valor que quiera. Bueno, ya aprendi la cosa del día. Gracias
Si esta respuesta resuelve tu duda, por favor pulsa en la de este mensaje. Gracias. |
|
| ID | Asunto | Fecha | Nick | |
| 40496 | Re: llenar dropdownlist segun la seleccion de otro (Resp: 40483) | 17/04/08 16:08 | Naiet | |  |
Exacto, con lo que yo te indicaba el dropdown 2 siempre está basado en lo que ponga el 1, con el otro método puedes poner lo que quieras. Claro, que la opción de rellenarlo desde código con lo que quieras la tendrás siempre disponible, independientemente de como definas el parámetro.
Si esta respuesta resuelve tu duda, por favor pulsa en la de este mensaje. Gracias. |