![]() |
Ayuda DropDownList con Datalist Hola amigos del foro, tengo un problema espero que me puedan ayudar, les cuento, tengo un dropdownlist en donde cargo los nombre de Usuarios desde una base de datos (hasta ahi no hay problem), lo que quiero es que cuando se seleccione un nombre del Dropdownlist, me aparezca el cargo que ocupa... en un datalist....dicho cargo se encuentra almacenado dentro de la misma tabla.. aqui les va el codigo para que vean si encuentran un error Function Cargo(ByVal usuarioNombre As String) As System.Data.DataSet Dim connectionString As String = "server='(local)'; trusted_connection=true; database='Memo'" Dim dbConnection As System.Data.IDbConnection = New System.Data.SqlClient.SqlConnection(connectionStri ng) Dim queryString As String = "SELECT [Usuarios].[UsuarioCargo] FROM [Usuarios] WHERE ([Usuarios].[UsuarioNombre"& _ "] = @UsuarioNombre)" Dim dbCommand As System.Data.IDbCommand = New System.Data.SqlClient.SqlCommand dbCommand.CommandText = queryString dbCommand.Connection = dbConnection Dim dbParam_usuarioNombre As System.Data.IDataParameter = New System.Data.SqlClient.SqlParameter dbParam_usuarioNombre.ParameterName = "@UsuarioNombre" dbParam_usuarioNombre.Value = usuarioNombre dbParam_usuarioNombre.DbType = System.Data.DbType.String dbCommand.Parameters.Add(dbParam_usuarioNombre) Dim dataAdapter As System.Data.IDbDataAdapter = New System.Data.SqlClient.SqlDataAdapter dataAdapter.SelectCommand = dbCommand Dim dataSet As System.Data.DataSet = New System.Data.DataSet dataAdapter.Fill(dataSet) Return dataSet End Function Function Nombre() As System.Data.DataSet Dim connectionString As String = "server='(local)'; trusted_connection=true; database='Memo'" Dim dbConnection As System.Data.IDbConnection = New System.Data.SqlClient.SqlConnection(connectionStri ng) Dim queryString As String = "SELECT [Usuarios].[UsuarioNombre] FROM [Usuarios]" Dim dbCommand As System.Data.IDbCommand = New System.Data.SqlClient.SqlCommand dbCommand.CommandText = queryString dbCommand.Connection = dbConnection Dim dataAdapter As System.Data.IDbDataAdapter = New System.Data.SqlClient.SqlDataAdapter dataAdapter.SelectCommand = dbCommand Dim dataSet As System.Data.DataSet = New System.Data.DataSet dataAdapter.Fill(dataSet) Return dataSet End Function Sub Page_Load(Sender As Object, E As EventArgs) If Not (Page.IsPostBack) dropdownlist1.DataSource = Nombre() dropdownlist1.DataTextField = "UsuarioNombre" dropdownlist1.DataBind() End If End Sub Sub DataList1_SelectedIndexChanged(sender As Object, e As EventArgs) DataList1.DataSource = Cargo(DropDownList1.Items(DropDownList1.SelectedIn dex).Text) DataList1.DataBind() End Sub ahhhh y esto me aparece cuando selecciono codigo HTML <body> <form runat="server"> <asp:DropDownList id="DropDownList1" style="Z-INDEX: 100; LEFT: 153px; POSITION: absolute; TOP: 44px" runat="server" OnSelectedIndexChanged="DropDownList1_SelectedInde xChanged" AutoPostBack="True" Width="353px"></asp:DropDownList> <asp:DataList id="DataList1" style="Z-INDEX: 100; LEFT: 152px; POSITION: absolute; TOP: 64px" runat="server" OnSelectedIndexChanged="DataList1_SelectedIndexCha nged" Width="353px" Height="60px"> <ItemTemplate> <asp:Label id="Label1" runat="server" text='<%# DataBinder.Eval(Container.DataItem,"UsuarioCargo") %>' font-size="XX-Small" font-names="Verdana" width="384px"></asp:Label> </ItemTemplate> </asp:DataList> <!-- Insert content here --> </form> </body> Espero me puedan ayudar... Saludos Roberto |
No me he leido todo el codigo detenidamente pero si q he visto algo q me parece interesante comentarte Cuando enlazas el dropdownlist con tabla : dropdownlist1.DataSource = Nombre() dropdownlist1.DataTextField = "UsuarioNombre" dropdownlist1.DataBind() yo añadirira una linea mas dropdownlist1.DataSource = Nombre() dropdownlist1.DataTextField = "UsuarioNombre" dropdownlist1.DataValueField = "Codigo" dropdownlist1.DataBind() Si tienes en la tabla un codigo identificativo te sera muy facil devolver la ocupacion cuyo codigo es x en vez de pedir q te devuelva la ocupacion de tal nombre q puede estar repetido en la tabla Entonces yo cogeria en la consulta ala tabla he importaria los tres campos Codigo,nombreUsuario y oficio enlazaria el drop con el nombre y el codigo y cdo cambie de el drop de posicion q el datalist muestre el campo oficio esto yo por ejemplo lko haria con un dataview q filtre esa consulta por codigo q esta seleccionado en e ldrop cuando selecionas el drop tienes dos valores para coger: dropdownlist1.selecteditem.text dropdownlist1.selecteditem.value el text sera el nombre y el value el codigo Esta es una posible forma,no la unica.espero q te sirva |
Gracias Excelente, problema solucionado, muchas gracias neivan |
| La zona horaria es GMT -6. Ahora son las 02:43. |
Desarrollado por vBulletin® Versión 3.8.7
Derechos de Autor ©2000 - 2026, Jelsoft Enterprises Ltd.